1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
lookup_0 = [0 for i in range(64)]
lookup_1 = [0 for i in range(64)]
for i in range(64):
lookup_0[i] = 0x80
lookup_1[i] = 0x80
lookup = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
for i in range(64):
val = ord(lookup[i])
bit6 = val & 0x40
bits05 = val & 0x3f
if bit6:
lookup_1[bits05] = i
else:
lookup_0[bits05] = i
allowed = "\t\r\n "
for z in allowed:
lookup_0[ord(z)] = 0xff
def sign8(x):
if x >= 128:
return x - 256
return x
lookup_0.reverse()
lookup_1.reverse()
print("lookup0:")
print(", ".join([str(sign8(i)) for i in lookup_0]))
print("lookup1:")
print(", ".join([str(sign8(i)) for i in lookup_1]))
lookupn = [0 for i in range(64)]
output = 0
for ifrom in range(16):
lookupn[ifrom*4 + 0] = output + 3
lookupn[ifrom*4 + 1] = output + 2
lookupn[ifrom*4 + 2] = output + 1
lookupn[ifrom*4 + 3] = output + 0
output += 4
lookupn.reverse()
print("reverse:")
print(", ".join([str(i) for i in lookupn]))
print("====")
lookup_0 = [0 for i in range(64)]
lookup_1 = [0 for i in range(64)]
for i in range(64):
lookup_0[i] = 0x80
lookup_1[i] = 0x80
lookup = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
for i in range(64):
val = ord(lookup[i])
bit6 = val & 0x40
bits05 = val & 0x3f
if bit6:
lookup_1[bits05] = i
else:
lookup_0[bits05] = i
allowed = "\0\t\r\n "
for z in allowed:
lookup_0[ord(z)] = 0xff
lookup_0.reverse()
lookup_1.reverse()
print("lookup0:")
print(", ".join([str(sign8(i)) for i in lookup_0]))
print("lookup1:")
print(", ".join([str(sign8(i)) for i in lookup_1]))
lookupn = [0 for i in range(64)]
output = 0
for ifrom in range(16):
lookupn[ifrom*4 + 0] = output + 3
lookupn[ifrom*4 + 1] = output + 2
lookupn[ifrom*4 + 2] = output + 1
lookupn[ifrom*4 + 3] = output + 0
output += 4
lookupn.reverse()
print("reverse:")
print(", ".join([str(i) for i in lookupn]))
|