using System; using Mono.Security.Cryptography; namespace System.Security.Cryptography { // Token: 0x020004F7 RID: 1271 internal class DESTransform : SymmetricTransform { // Token: 0x06002EFC RID: 12028 RVA: 0x00096FD8 File Offset: 0x000951D8 internal DESTransform(SymmetricAlgorithm symmAlgo, bool encryption, byte[] key, byte[] iv) : base(symmAlgo, encryption, iv) { byte[] array = null; if (key == null) { key = DESTransform.GetStrongKey(); array = key; } if (DES.IsWeakKey(key) || DES.IsSemiWeakKey(key)) { string text = Locale.GetText("This is a known weak, or semi-weak, key."); throw new CryptographicException(text); } if (array == null) { array = (byte[])key.Clone(); } this.keySchedule = new byte[DESTransform.KEY_BYTE_SIZE * 16]; this.byteBuff = new byte[DESTransform.BLOCK_BYTE_SIZE]; this.dwordBuff = new uint[DESTransform.BLOCK_BYTE_SIZE / 4]; this.SetKey(array); } // Token: 0x06002EFE RID: 12030 RVA: 0x00097140 File Offset: 0x00095340 private uint CipherFunct(uint r, int n) { uint num = 0U; byte[] array = this.keySchedule; int num2 = n << 3; uint num3 = (r >> 1) | (r << 31); num |= DESTransform.spBoxes[(int)((UIntPtr)(0U + (((num3 >> 26) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(64U + (((num3 >> 22) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(128U + (((num3 >> 18) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(192U + (((num3 >> 14) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(256U + (((num3 >> 10) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(320U + (((num3 >> 6) ^ (uint)array[num2++]) & 63U)))]; num |= DESTransform.spBoxes[(int)((UIntPtr)(384U + (((num3 >> 2) ^ (uint)array[num2++]) & 63U)))]; num3 = (r << 1) | (r >> 31); return num | DESTransform.spBoxes[(int)((UIntPtr)(448U + ((num3 ^ (uint)array[num2]) & 63U)))]; } // Token: 0x06002EFF RID: 12031 RVA: 0x00097258 File Offset: 0x00095458 internal static void Permutation(byte[] input, byte[] output, uint[] permTab, bool preSwap) { if (preSwap && BitConverter.IsLittleEndian) { DESTransform.BSwap(input); } int num = input[0] >> 4 << 1; int num2 = 32 + ((int)(input[0] & 15) << 1); uint num3 = permTab[num++] | permTab[num2++]; uint num4 = permTab[num] | permTab[num2]; int num5 = DESTransform.BLOCK_BYTE_SIZE << 1; int i = 2; int num6 = 1; while (i < num5) { int num7 = (int)input[num6]; num = (i << 5) + (num7 >> 4 << 1); num2 = (i + 1 << 5) + ((num7 & 15) << 1); num3 |= permTab[num++] | permTab[num2++]; num4 |= permTab[num] | permTab[num2]; i += 2; num6++; } if (preSwap || !BitConverter.IsLittleEndian) { output[0] = (byte)num3; output[1] = (byte)(num3 >> 8); output[2] = (byte)(num3 >> 16); output[3] = (byte)(num3 >> 24); output[4] = (byte)num4; output[5] = (byte)(num4 >> 8); output[6] = (byte)(num4 >> 16); output[7] = (byte)(num4 >> 24); } else { output[0] = (byte)(num3 >> 24); output[1] = (byte)(num3 >> 16); output[2] = (byte)(num3 >> 8); output[3] = (byte)num3; output[4] = (byte)(num4 >> 24); output[5] = (byte)(num4 >> 16); output[6] = (byte)(num4 >> 8); output[7] = (byte)num4; } } // Token: 0x06002F00 RID: 12032 RVA: 0x00097394 File Offset: 0x00095594 private static void BSwap(byte[] byteBuff) { byte b = byteBuff[0]; byteBuff[0] = byteBuff[3]; byteBuff[3] = b; b = byteBuff[1]; byteBuff[1] = byteBuff[2]; byteBuff[2] = b; b = byteBuff[4]; byteBuff[4] = byteBuff[7]; byteBuff[7] = b; b = byteBuff[5]; byteBuff[5] = byteBuff[6]; byteBuff[6] = b; } // Token: 0x06002F01 RID: 12033 RVA: 0x000973DC File Offset: 0x000955DC internal void SetKey(byte[] key) { Array.Clear(this.keySchedule, 0, this.keySchedule.Length); int num = DESTransform.PC1.Length; byte[] array = new byte[num]; byte[] array2 = new byte[num]; int num2 = 0; foreach (byte b in DESTransform.PC1) { array[num2++] = (byte)((key[b >> 3] >> (int)(7 ^ (b & 7))) & 1); } for (int j = 0; j < DESTransform.KEY_BYTE_SIZE * 2; j++) { int num3 = num >> 1; int k; for (k = 0; k < num3; k++) { int num4 = k + (int)DESTransform.leftRotTotal[j]; array2[k] = array[(num4 >= num3) ? (num4 - num3) : num4]; } for (k = num3; k < num; k++) { int num5 = k + (int)DESTransform.leftRotTotal[j]; array2[k] = array[(num5 >= num) ? (num5 - num3) : num5]; } int num6 = j * DESTransform.KEY_BYTE_SIZE; k = 0; foreach (byte b2 in DESTransform.PC2) { if (array2[(int)b2] != 0) { byte[] array3 = this.keySchedule; int num7 = num6 + k / 6; array3[num7] |= (byte)(128 >> k % 6 + 2); } k++; } } } // Token: 0x06002F02 RID: 12034 RVA: 0x00097560 File Offset: 0x00095760 public void ProcessBlock(byte[] input, byte[] output) { Buffer.BlockCopy(input, 0, this.dwordBuff, 0, DESTransform.BLOCK_BYTE_SIZE); if (this.encrypt) { uint num = this.dwordBuff[0]; uint num2 = this.dwordBuff[1]; num ^= this.CipherFunct(num2, 0); num2 ^= this.CipherFunct(num, 1); num ^= this.CipherFunct(num2, 2); num2 ^= this.CipherFunct(num, 3); num ^= this.CipherFunct(num2, 4); num2 ^= this.CipherFunct(num, 5); num ^= this.CipherFunct(num2, 6); num2 ^= this.CipherFunct(num, 7); num ^= this.CipherFunct(num2, 8); num2 ^= this.CipherFunct(num, 9); num ^= this.CipherFunct(num2, 10); num2 ^= this.CipherFunct(num, 11); num ^= this.CipherFunct(num2, 12); num2 ^= this.CipherFunct(num, 13); num ^= this.CipherFunct(num2, 14); num2 ^= this.CipherFunct(num, 15); this.dwordBuff[0] = num2; this.dwordBuff[1] = num; } else { uint num3 = this.dwordBuff[0]; uint num4 = this.dwordBuff[1]; num3 ^= this.CipherFunct(num4, 15); num4 ^= this.CipherFunct(num3, 14); num3 ^= this.CipherFunct(num4, 13); num4 ^= this.CipherFunct(num3, 12); num3 ^= this.CipherFunct(num4, 11); num4 ^= this.CipherFunct(num3, 10); num3 ^= this.CipherFunct(num4, 9); num4 ^= this.CipherFunct(num3, 8); num3 ^= this.CipherFunct(num4, 7); num4 ^= this.CipherFunct(num3, 6); num3 ^= this.CipherFunct(num4, 5); num4 ^= this.CipherFunct(num3, 4); num3 ^= this.CipherFunct(num4, 3); num4 ^= this.CipherFunct(num3, 2); num3 ^= this.CipherFunct(num4, 1); num4 ^= this.CipherFunct(num3, 0); this.dwordBuff[0] = num4; this.dwordBuff[1] = num3; } Buffer.BlockCopy(this.dwordBuff, 0, output, 0, DESTransform.BLOCK_BYTE_SIZE); } // Token: 0x06002F03 RID: 12035 RVA: 0x0009775C File Offset: 0x0009595C protected override void ECB(byte[] input, byte[] output) { DESTransform.Permutation(input, output, DESTransform.ipTab, false); this.ProcessBlock(output, this.byteBuff); DESTransform.Permutation(this.byteBuff, output, DESTransform.fpTab, true); } // Token: 0x06002F04 RID: 12036 RVA: 0x00097798 File Offset: 0x00095998 internal static byte[] GetStrongKey() { byte[] array = KeyBuilder.Key(DESTransform.KEY_BYTE_SIZE); while (DES.IsWeakKey(array) || DES.IsSemiWeakKey(array)) { array = KeyBuilder.Key(DESTransform.KEY_BYTE_SIZE); } return array; } // Token: 0x04001329 RID: 4905 internal static readonly int KEY_BIT_SIZE = 64; // Token: 0x0400132A RID: 4906 internal static readonly int KEY_BYTE_SIZE = DESTransform.KEY_BIT_SIZE / 8; // Token: 0x0400132B RID: 4907 internal static readonly int BLOCK_BIT_SIZE = 64; // Token: 0x0400132C RID: 4908 internal static readonly int BLOCK_BYTE_SIZE = DESTransform.BLOCK_BIT_SIZE / 8; // Token: 0x0400132D RID: 4909 private byte[] keySchedule; // Token: 0x0400132E RID: 4910 private byte[] byteBuff; // Token: 0x0400132F RID: 4911 private uint[] dwordBuff; // Token: 0x04001330 RID: 4912 private static readonly uint[] spBoxes = new uint[] { 8421888U, 0U, 32768U, 8421890U, 8421378U, 33282U, 2U, 32768U, 512U, 8421888U, 8421890U, 512U, 8389122U, 8421378U, 8388608U, 2U, 514U, 8389120U, 8389120U, 33280U, 33280U, 8421376U, 8421376U, 8389122U, 32770U, 8388610U, 8388610U, 32770U, 0U, 514U, 33282U, 8388608U, 32768U, 8421890U, 2U, 8421376U, 8421888U, 8388608U, 8388608U, 512U, 8421378U, 32768U, 33280U, 8388610U, 512U, 2U, 8389122U, 33282U, 8421890U, 32770U, 8421376U, 8389122U, 8388610U, 514U, 33282U, 8421888U, 514U, 8389120U, 8389120U, 0U, 32770U, 33280U, 0U, 8421378U, 1074282512U, 1073758208U, 16384U, 540688U, 524288U, 16U, 1074266128U, 1073758224U, 1073741840U, 1074282512U, 1074282496U, 1073741824U, 1073758208U, 524288U, 16U, 1074266128U, 540672U, 524304U, 1073758224U, 0U, 1073741824U, 16384U, 540688U, 1074266112U, 524304U, 1073741840U, 0U, 540672U, 16400U, 1074282496U, 1074266112U, 16400U, 0U, 540688U, 1074266128U, 524288U, 1073758224U, 1074266112U, 1074282496U, 16384U, 1074266112U, 1073758208U, 16U, 1074282512U, 540688U, 16U, 16384U, 1073741824U, 16400U, 1074282496U, 524288U, 1073741840U, 524304U, 1073758224U, 1073741840U, 524304U, 540672U, 0U, 1073758208U, 16400U, 1073741824U, 1074266128U, 1074282512U, 540672U, 260U, 67174656U, 0U, 67174404U, 67109120U, 0U, 65796U, 67109120U, 65540U, 67108868U, 67108868U, 65536U, 67174660U, 65540U, 67174400U, 260U, 67108864U, 4U, 67174656U, 256U, 65792U, 67174400U, 67174404U, 65796U, 67109124U, 65792U, 65536U, 67109124U, 4U, 67174660U, 256U, 67108864U, 67174656U, 67108864U, 65540U, 260U, 65536U, 67174656U, 67109120U, 0U, 256U, 65540U, 67174660U, 67109120U, 67108868U, 256U, 0U, 67174404U, 67109124U, 65536U, 67108864U, 67174660U, 4U, 65796U, 65792U, 67108868U, 67174400U, 67109124U, 260U, 67174400U, 65796U, 4U, 67174404U, 65792U, 2151682048U, 2147487808U, 2147487808U, 64U, 4198464U, 2151678016U, 2151677952U, 2147487744U, 0U, 4198400U, 4198400U, 2151682112U, 2147483712U, 0U, 4194368U, 2151677952U, 2147483648U, 4096U, 4194304U, 2151682048U, 64U, 4194304U, 2147487744U, 4160U, 2151678016U, 2147483648U, 4160U, 4194368U, 4096U, 4198464U, 2151682112U, 2147483712U, 4194368U, 2151677952U, 4198400U, 2151682112U, 2147483712U, 0U, 0U, 4198400U, 4160U, 4194368U, 2151678016U, 2147483648U, 2151682048U, 2147487808U, 2147487808U, 64U, 2151682112U, 2147483712U, 2147483648U, 4096U, 2151677952U, 2147487744U, 4198464U, 2151678016U, 2147487744U, 4160U, 4194304U, 2151682048U, 64U, 4194304U, 4096U, 4198464U, 128U, 17039488U, 17039360U, 553648256U, 262144U, 128U, 536870912U, 17039360U, 537133184U, 262144U, 16777344U, 537133184U, 553648256U, 553910272U, 262272U, 536870912U, 16777216U, 537133056U, 537133056U, 0U, 536871040U, 553910400U, 553910400U, 16777344U, 553910272U, 536871040U, 0U, 553648128U, 17039488U, 16777216U, 553648128U, 262272U, 262144U, 553648256U, 128U, 16777216U, 536870912U, 17039360U, 553648256U, 537133184U, 16777344U, 536870912U, 553910272U, 17039488U, 537133184U, 128U, 16777216U, 553910272U, 553910400U, 262272U, 553648128U, 553910400U, 17039360U, 0U, 537133056U, 553648128U, 262272U, 16777344U, 536871040U, 262144U, 0U, 537133056U, 17039488U, 536871040U, 268435464U, 270532608U, 8192U, 270540808U, 270532608U, 8U, 270540808U, 2097152U, 268443648U, 2105352U, 2097152U, 268435464U, 2097160U, 268443648U, 268435456U, 8200U, 0U, 2097160U, 268443656U, 8192U, 2105344U, 268443656U, 8U, 270532616U, 270532616U, 0U, 2105352U, 270540800U, 8200U, 2105344U, 270540800U, 268435456U, 268443648U, 8U, 270532616U, 2105344U, 270540808U, 2097152U, 8200U, 268435464U, 2097152U, 268443648U, 268435456U, 8200U, 268435464U, 270540808U, 2105344U, 270532608U, 2105352U, 270540800U, 0U, 270532616U, 8U, 8192U, 270532608U, 2105352U, 8192U, 2097160U, 268443656U, 0U, 270540800U, 268435456U, 2097160U, 268443656U, 1048576U, 34603009U, 33555457U, 0U, 1024U, 33555457U, 1049601U, 34604032U, 34604033U, 1048576U, 0U, 33554433U, 1U, 33554432U, 34603009U, 1025U, 33555456U, 1049601U, 1048577U, 33555456U, 33554433U, 34603008U, 34604032U, 1048577U, 34603008U, 1024U, 1025U, 34604033U, 1049600U, 1U, 33554432U, 1049600U, 33554432U, 1049600U, 1048576U, 33555457U, 33555457U, 34603009U, 34603009U, 1U, 1048577U, 33554432U, 33555456U, 1048576U, 34604032U, 1025U, 1049601U, 34604032U, 1025U, 33554433U, 34604033U, 34603008U, 1049600U, 0U, 1U, 34604033U, 0U, 1049601U, 34603008U, 1024U, 33554433U, 33555456U, 1024U, 1048577U, 134219808U, 2048U, 131072U, 134350880U, 134217728U, 134219808U, 32U, 134217728U, 131104U, 134348800U, 134350880U, 133120U, 134350848U, 133152U, 2048U, 32U, 134348800U, 134217760U, 134219776U, 2080U, 133120U, 131104U, 134348832U, 134350848U, 2080U, 0U, 0U, 134348832U, 134217760U, 134219776U, 133152U, 131072U, 133152U, 131072U, 134350848U, 2048U, 32U, 134348832U, 2048U, 133152U, 134219776U, 32U, 134217760U, 134348800U, 134348832U, 134217728U, 131072U, 134219808U, 0U, 134350880U, 131104U, 134217760U, 134348800U, 134219776U, 134219808U, 0U, 134350880U, 133120U, 133120U, 2080U, 2080U, 131104U, 134217728U, 134350848U }; // Token: 0x04001331 RID: 4913 private static readonly byte[] PC1 = new byte[] { 56, 48, 40, 32, 24, 16, 8, 0, 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 60, 52, 44, 36, 28, 20, 12, 4, 27, 19, 11, 3 }; // Token: 0x04001332 RID: 4914 private static readonly byte[] leftRotTotal = new byte[] { 1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28 }; // Token: 0x04001333 RID: 4915 private static readonly byte[] PC2 = new byte[] { 13, 16, 10, 23, 0, 4, 2, 27, 14, 5, 20, 9, 22, 18, 11, 3, 25, 7, 15, 6, 26, 19, 12, 1, 40, 51, 30, 36, 46, 54, 29, 39, 50, 44, 32, 47, 43, 48, 38, 55, 33, 52, 45, 41, 49, 35, 28, 31 }; // Token: 0x04001334 RID: 4916 internal static readonly uint[] ipTab = new uint[] { 0U, 0U, 256U, 0U, 0U, 256U, 256U, 256U, 1U, 0U, 257U, 0U, 1U, 256U, 257U, 256U, 0U, 1U, 256U, 1U, 0U, 257U, 256U, 257U, 1U, 1U, 257U, 1U, 1U, 257U, 257U, 257U, 0U, 0U, 16777216U, 0U, 0U, 16777216U, 16777216U, 16777216U, 65536U, 0U, 16842752U, 0U, 65536U, 16777216U, 16842752U, 16777216U, 0U, 65536U, 16777216U, 65536U, 0U, 16842752U, 16777216U, 16842752U, 65536U, 65536U, 16842752U, 65536U, 65536U, 16842752U, 16842752U, 16842752U, 0U, 0U, 512U, 0U, 0U, 512U, 512U, 512U, 2U, 0U, 514U, 0U, 2U, 512U, 514U, 512U, 0U, 2U, 512U, 2U, 0U, 514U, 512U, 514U, 2U, 2U, 514U, 2U, 2U, 514U, 514U, 514U, 0U, 0U, 33554432U, 0U, 0U, 33554432U, 33554432U, 33554432U, 131072U, 0U, 33685504U, 0U, 131072U, 33554432U, 33685504U, 33554432U, 0U, 131072U, 33554432U, 131072U, 0U, 33685504U, 33554432U, 33685504U, 131072U, 131072U, 33685504U, 131072U, 131072U, 33685504U, 33685504U, 33685504U, 0U, 0U, 1024U, 0U, 0U, 1024U, 1024U, 1024U, 4U, 0U, 1028U, 0U, 4U, 1024U, 1028U, 1024U, 0U, 4U, 1024U, 4U, 0U, 1028U, 1024U, 1028U, 4U, 4U, 1028U, 4U, 4U, 1028U, 1028U, 1028U, 0U, 0U, 67108864U, 0U, 0U, 67108864U, 67108864U, 67108864U, 262144U, 0U, 67371008U, 0U, 262144U, 67108864U, 67371008U, 67108864U, 0U, 262144U, 67108864U, 262144U, 0U, 67371008U, 67108864U, 67371008U, 262144U, 262144U, 67371008U, 262144U, 262144U, 67371008U, 67371008U, 67371008U, 0U, 0U, 2048U, 0U, 0U, 2048U, 2048U, 2048U, 8U, 0U, 2056U, 0U, 8U, 2048U, 2056U, 2048U, 0U, 8U, 2048U, 8U, 0U, 2056U, 2048U, 2056U, 8U, 8U, 2056U, 8U, 8U, 2056U, 2056U, 2056U, 0U, 0U, 134217728U, 0U, 0U, 134217728U, 134217728U, 134217728U, 524288U, 0U, 134742016U, 0U, 524288U, 134217728U, 134742016U, 134217728U, 0U, 524288U, 134217728U, 524288U, 0U, 134742016U, 134217728U, 134742016U, 524288U, 524288U, 134742016U, 524288U, 524288U, 134742016U, 134742016U, 134742016U, 0U, 0U, 4096U, 0U, 0U, 4096U, 4096U, 4096U, 16U, 0U, 4112U, 0U, 16U, 4096U, 4112U, 4096U, 0U, 16U, 4096U, 16U, 0U, 4112U, 4096U, 4112U, 16U, 16U, 4112U, 16U, 16U, 4112U, 4112U, 4112U, 0U, 0U, 268435456U, 0U, 0U, 268435456U, 268435456U, 268435456U, 1048576U, 0U, 269484032U, 0U, 1048576U, 268435456U, 269484032U, 268435456U, 0U, 1048576U, 268435456U, 1048576U, 0U, 269484032U, 268435456U, 269484032U, 1048576U, 1048576U, 269484032U, 1048576U, 1048576U, 269484032U, 269484032U, 269484032U, 0U, 0U, 8192U, 0U, 0U, 8192U, 8192U, 8192U, 32U, 0U, 8224U, 0U, 32U, 8192U, 8224U, 8192U, 0U, 32U, 8192U, 32U, 0U, 8224U, 8192U, 8224U, 32U, 32U, 8224U, 32U, 32U, 8224U, 8224U, 8224U, 0U, 0U, 536870912U, 0U, 0U, 536870912U, 536870912U, 536870912U, 2097152U, 0U, 538968064U, 0U, 2097152U, 536870912U, 538968064U, 536870912U, 0U, 2097152U, 536870912U, 2097152U, 0U, 538968064U, 536870912U, 538968064U, 2097152U, 2097152U, 538968064U, 2097152U, 2097152U, 538968064U, 538968064U, 538968064U, 0U, 0U, 16384U, 0U, 0U, 16384U, 16384U, 16384U, 64U, 0U, 16448U, 0U, 64U, 16384U, 16448U, 16384U, 0U, 64U, 16384U, 64U, 0U, 16448U, 16384U, 16448U, 64U, 64U, 16448U, 64U, 64U, 16448U, 16448U, 16448U, 0U, 0U, 1073741824U, 0U, 0U, 1073741824U, 1073741824U, 1073741824U, 4194304U, 0U, 1077936128U, 0U, 4194304U, 1073741824U, 1077936128U, 1073741824U, 0U, 4194304U, 1073741824U, 4194304U, 0U, 1077936128U, 1073741824U, 1077936128U, 4194304U, 4194304U, 1077936128U, 4194304U, 4194304U, 1077936128U, 1077936128U, 1077936128U, 0U, 0U, 32768U, 0U, 0U, 32768U, 32768U, 32768U, 128U, 0U, 32896U, 0U, 128U, 32768U, 32896U, 32768U, 0U, 128U, 32768U, 128U, 0U, 32896U, 32768U, 32896U, 128U, 128U, 32896U, 128U, 128U, 32896U, 32896U, 32896U, 0U, 0U, 2147483648U, 0U, 0U, 2147483648U, 2147483648U, 2147483648U, 8388608U, 0U, 2155872256U, 0U, 8388608U, 2147483648U, 2155872256U, 2147483648U, 0U, 8388608U, 2147483648U, 8388608U, 0U, 2155872256U, 2147483648U, 2155872256U, 8388608U, 8388608U, 2155872256U, 8388608U, 8388608U, 2155872256U, 2155872256U, 2155872256U }; // Token: 0x04001335 RID: 4917 internal static readonly uint[] fpTab = new uint[] { 0U, 0U, 0U, 64U, 0U, 16384U, 0U, 16448U, 0U, 4194304U, 0U, 4194368U, 0U, 4210688U, 0U, 4210752U, 0U, 1073741824U, 0U, 1073741888U, 0U, 1073758208U, 0U, 1073758272U, 0U, 1077936128U, 0U, 1077936192U, 0U, 1077952512U, 0U, 1077952576U, 0U, 0U, 64U, 0U, 16384U, 0U, 16448U, 0U, 4194304U, 0U, 4194368U, 0U, 4210688U, 0U, 4210752U, 0U, 1073741824U, 0U, 1073741888U, 0U, 1073758208U, 0U, 1073758272U, 0U, 1077936128U, 0U, 1077936192U, 0U, 1077952512U, 0U, 1077952576U, 0U, 0U, 0U, 0U, 16U, 0U, 4096U, 0U, 4112U, 0U, 1048576U, 0U, 1048592U, 0U, 1052672U, 0U, 1052688U, 0U, 268435456U, 0U, 268435472U, 0U, 268439552U, 0U, 268439568U, 0U, 269484032U, 0U, 269484048U, 0U, 269488128U, 0U, 269488144U, 0U, 0U, 16U, 0U, 4096U, 0U, 4112U, 0U, 1048576U, 0U, 1048592U, 0U, 1052672U, 0U, 1052688U, 0U, 268435456U, 0U, 268435472U, 0U, 268439552U, 0U, 268439568U, 0U, 269484032U, 0U, 269484048U, 0U, 269488128U, 0U, 269488144U, 0U, 0U, 0U, 0U, 4U, 0U, 1024U, 0U, 1028U, 0U, 262144U, 0U, 262148U, 0U, 263168U, 0U, 263172U, 0U, 67108864U, 0U, 67108868U, 0U, 67109888U, 0U, 67109892U, 0U, 67371008U, 0U, 67371012U, 0U, 67372032U, 0U, 67372036U, 0U, 0U, 4U, 0U, 1024U, 0U, 1028U, 0U, 262144U, 0U, 262148U, 0U, 263168U, 0U, 263172U, 0U, 67108864U, 0U, 67108868U, 0U, 67109888U, 0U, 67109892U, 0U, 67371008U, 0U, 67371012U, 0U, 67372032U, 0U, 67372036U, 0U, 0U, 0U, 0U, 1U, 0U, 256U, 0U, 257U, 0U, 65536U, 0U, 65537U, 0U, 65792U, 0U, 65793U, 0U, 16777216U, 0U, 16777217U, 0U, 16777472U, 0U, 16777473U, 0U, 16842752U, 0U, 16842753U, 0U, 16843008U, 0U, 16843009U, 0U, 0U, 1U, 0U, 256U, 0U, 257U, 0U, 65536U, 0U, 65537U, 0U, 65792U, 0U, 65793U, 0U, 16777216U, 0U, 16777217U, 0U, 16777472U, 0U, 16777473U, 0U, 16842752U, 0U, 16842753U, 0U, 16843008U, 0U, 16843009U, 0U, 0U, 0U, 0U, 128U, 0U, 32768U, 0U, 32896U, 0U, 8388608U, 0U, 8388736U, 0U, 8421376U, 0U, 8421504U, 0U, 2147483648U, 0U, 2147483776U, 0U, 2147516416U, 0U, 2147516544U, 0U, 2155872256U, 0U, 2155872384U, 0U, 2155905024U, 0U, 2155905152U, 0U, 0U, 128U, 0U, 32768U, 0U, 32896U, 0U, 8388608U, 0U, 8388736U, 0U, 8421376U, 0U, 8421504U, 0U, 2147483648U, 0U, 2147483776U, 0U, 2147516416U, 0U, 2147516544U, 0U, 2155872256U, 0U, 2155872384U, 0U, 2155905024U, 0U, 2155905152U, 0U, 0U, 0U, 0U, 32U, 0U, 8192U, 0U, 8224U, 0U, 2097152U, 0U, 2097184U, 0U, 2105344U, 0U, 2105376U, 0U, 536870912U, 0U, 536870944U, 0U, 536879104U, 0U, 536879136U, 0U, 538968064U, 0U, 538968096U, 0U, 538976256U, 0U, 538976288U, 0U, 0U, 32U, 0U, 8192U, 0U, 8224U, 0U, 2097152U, 0U, 2097184U, 0U, 2105344U, 0U, 2105376U, 0U, 536870912U, 0U, 536870944U, 0U, 536879104U, 0U, 536879136U, 0U, 538968064U, 0U, 538968096U, 0U, 538976256U, 0U, 538976288U, 0U, 0U, 0U, 0U, 8U, 0U, 2048U, 0U, 2056U, 0U, 524288U, 0U, 524296U, 0U, 526336U, 0U, 526344U, 0U, 134217728U, 0U, 134217736U, 0U, 134219776U, 0U, 134219784U, 0U, 134742016U, 0U, 134742024U, 0U, 134744064U, 0U, 134744072U, 0U, 0U, 8U, 0U, 2048U, 0U, 2056U, 0U, 524288U, 0U, 524296U, 0U, 526336U, 0U, 526344U, 0U, 134217728U, 0U, 134217736U, 0U, 134219776U, 0U, 134219784U, 0U, 134742016U, 0U, 134742024U, 0U, 134744064U, 0U, 134744072U, 0U, 0U, 0U, 0U, 2U, 0U, 512U, 0U, 514U, 0U, 131072U, 0U, 131074U, 0U, 131584U, 0U, 131586U, 0U, 33554432U, 0U, 33554434U, 0U, 33554944U, 0U, 33554946U, 0U, 33685504U, 0U, 33685506U, 0U, 33686016U, 0U, 33686018U, 0U, 0U, 2U, 0U, 512U, 0U, 514U, 0U, 131072U, 0U, 131074U, 0U, 131584U, 0U, 131586U, 0U, 33554432U, 0U, 33554434U, 0U, 33554944U, 0U, 33554946U, 0U, 33685504U, 0U, 33685506U, 0U, 33686016U, 0U, 33686018U, 0U }; } }