WRITEUP KnightCTF2023

CTFtime.org / KnightCTF 2023

Author: VietTrung

Xorathrust (345 solves)

Challenge

Read the script and solve the problem.

Demo Flag: KCTF{Fl4g_H3r3}
encrypt.py python def main(): flag_enc = "" with open("flag.txt", "r") as infile: flag = infile.read() flag = list(flag) for each in flag: each = chr(ord(each) ^ 0x66) flag_enc += each with open("flag.enc.txt", "w") as outfile: outfile.write(flag_enc) if __name__ == "__main__": main()
flag.enc.txt -%2 S9R9RS9V

I see that they read every character and xor it with 0x66

It's very easy to decode by xor again with 0x66

with open("flag.enc.txt", "r") as infile:
  flag = infile.read()
  # flag = list(flag)
  print(flag)
  flag_enc = ""
  for each in flag:
    each = chr(ord(each) ^ 0x66)
    flag_enc += each
  print(flag_enc)

Flag: KCTF{ju5t_4_b45ic_x0r}

Factorie (505 solves)

Challenge

Have you ever heard of prime factors? The file challenge.txt contains a number that has two prime factors. Can you find them?

Demo Flag: KCTF{small-number_big-number}

You can using an online tool to solve this challenge like dcode.fr

p = 39434538531451803895327 x 55131777675015246472249

Flag: KCTF{39434538531451803895327_55131777675015246472249}

Vaulter (167 solves)

Challenge

A freshermen of XOR University of Science & Techonology has acquired keen interest in cryptography. To protect his files, he has created a script that encrypts the files. Are you capable enough to get the file(s)?

Demo Flag: KCTF{some_text_here}
vaulter-challenge.py python import sys import random def main(): byte_data = [] file_name = sys.argv[1] num = random.randint(1, 1024) with open(file_name, "rb") as f: byte_data = f.read() bdh = byte_data.hex() out = [] for each in list(bdh): out.append(ord(each) ^ num) concat = "".join(chr(i) for i in out) with open("output.enc", "w") as f: f.write(concat) if __name__ == "__main__": main()
vaulter-output.enc.txt ȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɗɕɒȇɗȁȅɐȆɒȃȂȃȃȃȃȁȃȃȆȃȃȃȃȂȀȃȃȃȋȃȁȆɑȇȀȅɕȅɖȄȇȅȆȅɖȄȇȆɕȆȇȄȊȄȃȅȆȄȀȆɗȁɖȄȋȅɗȅɐȁȃɒȁȃȇȃȁȁȋɒȃȃȃȃȁȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɑȇȊȇɐɑȅɖɐȁȀȃȂȃȇȆɕȄȊȆɕɒȃɕȊȂɑȄȆȆȅȁɖȋɒȁɒɒȁɒȃȁȋɑȀɖȊȅȁɗȆȁɖȊȃȄȂȋȄɑȃȁȆȅɕɗȊȁɐȄɑɐɕɖɑɖȂȀȃȁȆȂȆȆȃȂȊȂȃɒȅɐȁȁȁȆȀȀɕȄɗɖȀȀȆȅɐȅȋȀɗȂɗɒȊɒȅɐȃȊȂȂɑȆȄȄȁȆɖɑȂȄȀɗȊȅȋȂȊȀȆɖȅȊȀȄȁɑɗȊɗȄɖȇȁɗȄɕȅȇȂȊȁȅɖȂȊȇȀȃɗɖȇȂɐȊȀȅȋȃȅɐȀȇɑɐɑɗȂȊȇɐȀȅȃȂȀȃȁȀɑȆɐȀȊȁɐɗȆȀȃɒȇɕȊɐɒȀȊɐȋȀȂȆȆȋɕȋȃȃȋɖȁɒȊȆȋɕȆȅȁȇȄɒȋɗȀȀȂɖȋȇɕɐȂȅȀȀɖȃɕȄɑɗɗɖȃȀȊȄɗɖȁȆȄȃȁȊȇɕɑȆȃȄȂɑȃɖȆɖɒȃȂȁȃɑȊȀɑȁɗȄȀȆȄɗȅɖȇȋȁȁȂȋȅȇɗȊȄȀɗȀȆȋȅȄȊȆȇɐȋȇȅȃɑȇȂȇȋȊɖɒȄɐɖȊɗȇȊɕȊȇȄɐȊȄȆȃȊȃȄȁɗɑȋȀȄȀȂɗɕȃȋɖȂɒȂȋȀɕȊȋȆȃȆȄȋɖȃȄɖɐȄȇȂɕȄȇȀȇȆȂȁɑɐȋɐȅȁȁɒȅȄȄȅȂɒȊȋɑɒɕȄɐȆȇȆɐȄȊɑȊɑȃɒȇȁɐȇɖɗɑȂɐɖȃɕȇȆȆɒȆȁȆɑȇɕɒɗɒȁɗȇȇȁɕȃȂȊȂɐɖɗɐȊɒɒȁɒɗȆȋɒȂɗɗȊɖɕɕȁȋȃȄɒȅȋɗȃȂɑɐȀɐȇȆɖȀɗɑȂɗȃɕȁȊȊȂɖȃȂɒȃȃȀɑɖȄȇɖȋȇȂȆȇɐȀɕɒɕȇȅɕȂɐɑɑɐȂȀɒȇɒȁɗɐȋȊȊȋȂɒɑȋȀɐȇȅȅɑɗɗȃȊȊȂȅȋȃȀɒȂȄȊɕȅɐɕɖȅɗȋɗɒȊɐȋɒɒȇɐɖȄȂɕȇȃȂȅȊɒȀɖȀȀɕɐȅɗɖɒɕȅɐɒɗɐɖȅȊɖȃȃȃȀȂɖȊɗȀȄɕȆɗȊɑȇȋɗȅȅȄɐɕȃȄɕȆȅɗɒȃȇȃȂɗɐȋɖȅɗɑɕɑȅɗɕȋȃȀȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȂɖȊȂȂɒɑȄɖɕȃȃȃȃȃȃȇɖȃȁȃȃȃȃȃɑȃȃȃȋȃȁȆɕȄȁȅȆȅɐȄȀȁɕȁɖȄȁȅȆȅɐȄȀȁȃɒȁȃȇȃȁȁȋɒȃȃȃȃȁȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɒɐȊȁɐȂȅɒɐȀȀȃȃɐȇȃɖɕȋȀɕɗȋȀɗȂɑɗȆȂɗɒɐȂȂȋɒȀȇɖȁɕȅȀɗȃɗɑȂȋɗȊȃȄȃȋȆɑȇȊȇɐȂȀɗɑɗȋȅɒɗȄɕɖɕɗȀɐɗȋɗȋȃȁȆɗɖȊȅȂȇȄɐɑɗȁɗȀȊȀɗȃȄɒȄȀȊɐȇȅȄȆɖȃȊȇȆɗɕȃȂɒȊȅȆȆȃɗȋɒɑɗȃȊɗȅɕȊȆɖɐȀȆɑɕɑɑɐȄȋȃȃȊȆȋȆɑɐɒȆȀȂȄȋɗȅȄȃɖȁȃɐȊɑɖȅɕȅȅȅɕɗɐɒȁȀȇȊȁȊɐɒȋȀȋɑȆȊȂȆȋɒɐɕȂɒȃȅȊȂɕȋȋȋȊȋɐɗɐȃȂȀɖȆȁɒȇȇɕȅɖȆɒȄȃɑȅȊȁȁȁȊɐɕɗȇȅȀȁȇɑȀɒȀȊɖȄȂȆȆɗȄɕȄȊȋȄɖȀȀɒȃȊȊȀȂɗȆɗȅȅɒȇȋȆɑȄɑȃȄɒɒȀɗȇȆɑɖȋȅȂɗɑɒɐɖȂȊȄɖȃɒȅȅȀɕɑȂȊȄȀȀȁɗȊȃȋɕɐȁɗɖɑȁȆɗɐȇȆȇɖɒȊȀɑȋȀȁȋɗȅɒȁȊɕȆȁɐȂɒȅɐȀȃȁɕȁȆȊɐȊȂȅȁɒɐȃɒȂɒɕȃɑɐɗȂɖɒȄɒɒȀɑɕɒȄɐȆȋȊȋȆȁɐȃȊɒȂȃȊȋȊȁɕɕɑȄɐȅȅȆɐȂȁȆɒɕɖɖȄȋɒɖȅȂȊȀɕȀȅɖɕȁȂȆȊɑȇȆɕɖȂȅɕȂɑȊɐȆɗȇȂɕȀȃȂȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɗȅȅȇɑȀȆȂɕȇȃȃȃȃȃȃȀȂȃȀȃȃȃȃȂɐȃȃȃȋȃȂȄȄȅɕȄȁȅȇȁɕȆɕȄȁȅȆȅɐȄȀȁɕȅȇȅɕȅȀȄȆȅɗȅȆȅɖȄȇȁɖȄȋȅɗȅɐȁɖȄȁȅȆȅɐȄȀȁȃɒȁȃȇȃȂȁȋɒȃȃȃȃȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɒɐȊȁɐɑȅɒɐȀȀȃȂȃȇȆɕȄȋȆɕɖȋȀȊȋȄɗȁɗȀɑȄɗȆȃȇȁɖȇȅɐȇɒȁȂɗɑɗȅɕɗȃȃȇȆȂɖȀɕɒȋȁɐȃȊɐɗɕȇɖȂɑɕɒɕȇȋȇȊɖɑɗȃȅȃɑɒɕȃȄȁɒɖȊȋȄȀɐɕȋȃȀȅɗɑɐɕɐȂȋɒȄȄȋɐɗȇȄɑɒȄɒȃɐȋȄȁȂȃɖȋȋɐɒɕȄɑɗȄȁɒȄȋɒȊȂɖɒɕɖɖȇȂȂȃȅɑȆȄȅɑɖɑȂɗȁɒȂȋȊȂȅȃȆɑȆɖȆɖȅɐȊɖɗȃȅɒȇɖȇɑɗȇɕȆȋȂȇȇɒȁȀȋȆȁɗȃȀȂȋȄɑȆȊȇȅȇȀɒȂɐȀȇȅȆȀɖɒȃȇɑȁɕȋɗȋɕȋȀɖȅȀȇɐȅȆȅȃȅȅɗȆɖȄȆȋɑȄȁȊȆɖȄȄȄȀȁȇɖȂȊȆȃȊɖȀȃɐȆɒɖȆȅȂȃȄȄɕȆȀȆȋȋȅɒȃɐɕȋȂɕɑȅȅɕȊɒɗɖɖȃȋȀȀȄȅɕȃȀȀɒȀɖȆȀȁȂȀɕȄȃɕɕȋɐɐɐɖȊȀȋȇɒȆȋȂɗȆɑȅȇȃȆȊȀȀȃȇɑȇȇȊȃɖȄȇȆȆȅȇɑȋɒɗȃȂɕȋɑȅȀȀȁɒȄȆȃȁɐɒɒɐȃɒȀɐȆɒȊɐȃȅȂȊɖɒɑɑɕȆɗɑȁȊɖɗȀȁɖɕɖɑȅȂɕɐȅɖɕɑȃȊȋȄȀɑȋȆȊɗȁɒȂɕȂȋɖȁɑɑɗɑȄȂȀȋɕȊɕɖȋȁȋȁȂȇɕȀɖȄɒɕȊȃȆȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȀȊȆɑɑɒɑȄȆȊȃȀȃȃȃȃɑȄȁȁȃȃȃȃȂȂȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȅȇȅɕȅȀȄȆȅɗȅȆȅɖȄȇȁɖȄȋȅɗȅɐɖɐȆɒɗɗȇɖɗɑȀȃȂȋɑɗȊɕɑȇȄȄɕȃȄȁȀȊȃȊȊȁɗȁɒɖȋȆȋȋȂȅɑȂȂȅȂȋɗɒȁȅȆȆȋȀȆɗȁȀɗȄȄȂȂɒɒɕɕɖȊȀɖɗȀȇȄȇɗȀɒȇɑɗɐȅȆɖȅɕȇɕȀȁȀɑȀɕȅɗȃȂȃȊȃɒȅȋȋȀȅȊɑɖȇɒɕɐɗȊȀɖɗɕȀȊɖȄɑȀȆɗȁȊɖɖɕɖɐȂȁȆɒȀȅȃȋɖȊȆȁȅȋȁɕȄȋȀɗȅȄȅȂȇȃȃɐɐȊȂȇȋȃȋȊɕɕȅȋȀɐɕɖȄɐȄȆɑɑɑȃȂɗȃȃȅɕȁȃȇȆȁɐȂȄȂȀɕȆȋȅȃȂɗȂɐȃɐȆɖɑɖɗȋȁɕɖȁȇȇɒȃȊɐȅȂȅɖȋȃȋȆɖȃȀɒȁɖȁȇɖɒȃȄȊȊȀȂȀȁȃɖȇȀȋɗȀȁɐɐɒȃɗɖȅȅȃȇȁȊɒȂȇȆȅɒɑȅȊȂȅȃɒȂȇȋȆȀȋȁȄȃȆȋȃȋȊȆȋȇȀɑȆȂȁɑȁɒɗɕɒȇȂȁȃȋȅɑȅɗɕȀȃɗȁȂȊɕȇȀȂɗɗȇȄȃɖȋȄȁȀȀɑȇȇȇɐȂɐȁȇɖȄȅȋȃȊɗȂȃȅȆȆȃȂȊȄɐɗȊȅȃɑȃȊɑȋɐȋȇɐȇɗɐȄȅɒȅȇȁȀȂȅȋȅɐȆȀȇɗȇȀȃȅɗȆȁɐȊȄȆɑȂȅȆȀȇȁȇȀȁȅȋȇȂȁɑȀɑȃȄȃȆȂɑȄȋȂȂȂɕɗȁȃȆȄȀɐɒɖȁȂɑȅȊȅȀȇɗɐȊȇɑȋɒȁȆȂȀɕȊɒȂȊȅɒȊȀɑɐɗȆȊȇȆȂɖɗȅȁȊȊȀȂȆȇȊȋȆɒȃɖȋȁɖɑȋɐɐȋɒȆȂȆɖɐɒȂȅȋɑȅȀȀȅɑȇȃɖȅɑȄȋȊȊȋȀȀɗɒȋɐȁɑȅȇɒɑɕȀɑȋȀɒȋɖɒɒȋɒɒɐȃȃȀȄɒȂȆɕȊȄȊȂɗȂȋɒɕȊɖɗȋȋɒɗȅȋȋȀȋɒȀȋȋȋɖȆȋɐȇɗȁȋȆɐɐɗɗȊȀȃȅȂȊȃɕȃȆȆɖȁȃȄȆȊɑȀȅȅȅɖɖɑɐɗɕɗȃȃȄȅȅɖȃȃȄȇȀȆɑɖȂɕɐȇȊɑȂɒȁȁɗȇȃɑɑȅɗɒȂɒȋȆȊɐȀɖɒɖɐɒȁȄȇɒɖȇȄȁȋȆȇȅȂɖȋȄȄȅɐɒȅȄȇɑȁɐȄȄɐɐɗɐȃȀɒɑȆɖȁɗɖɑȁɑȆȋȀɕȋɖɐɐȆȊȃȅɒȆɗɗɐɒȃɐɐȆɒȄȆȀȁɖȂȇȊɐȆȃɐɑɐȋɗȅȂɖɗȋɕȁȋȂɑȁȃȁɐȃɖɗȊȁȅȃȅȃȃɕɐȂȋȊȇȋȂȅɖɖȁȊȇȂȂȂɗɑȇȀȀȇɕȊɗȇȃɕɒȁɒȋɗȄɖɖȂɗɕȄɕȅȋȁȁȅȀȇɐȁȁȊɐɐɒȊɑȊɗȊȀȀȄȅɒȂɒȀɒȋȀȄȅɐɖɕȊȆȅȃȄȁɒɐɗɐɖȀȃɑɑȁɕɗȄȀȇȋɕɑȃȂɑȁȆɑȂȊɒɑȁȃȄȇȆȂȆȆȄȆɒɒȅȀɐȂȋɗɑȅȃȀɒȃȇȅɐȇɑɒȀɖɑȇȋȄȋȆɒȃɖɖɗɐȁɐɖȁɖɐȊȃɖɑȅɑȁȂȅȇɑɗȀȋȆȇȃȇɗȁȃɒȇȇȄɕȅɗɒȃȄȄȄȅȆɗȁȇɒɐȄȂɐȀȅȆɕȁȋȊȂȃȀȀȄȄȁȁȊɖȂȊȄɑȊȇɗɒɐȂȁȇɑȂȁȇȂɗȂȁȋȄɐɐɗɒȄȃȄȂȁȁɗɖȇȁȀȇɒɑȁȊȀȆȃɒɐȄȅɒȇɗɗɐȂɕȁȄȆɑɐȇɖȆȅɕȇɖɒɐȁȆȇȇȊȅȊȁȆȇȆȋȅȀȀȆɐȄɐȂɖȃȂȇȅȋȋɐɐȂȇȁɖȇɐȃȋɗȀȆɗȆȋɐȊȁɐȄɗɕɖȃȀȇɐȋɖȃȂɐȃȀȊɗȁȀɑȄȋɐɗȁȊɐɗȁȃȆȇȋȀȃȆȁȃɑȅȊȄȃȃȁȂȋȄɖȄȆȋȆȊȀȀȀɕɐɒɖȄȆȄȀɐȆɗȆȄɕȄȁȀȂȀɗɑȄȃȆɕȁȃɖȁɑɕɐɖɑɐȄȇɕȃɗȇɐȋȅȇȂȇɒɖȂȀȇȄɖȊɒȊȆɕȁɕɒȄɒɗȅȅȄɖȅɗȀɒȂȄȊȂɒȆɕȆɐȆȊȁȅɐȁȂȋɐȂɒɖȀɒɕȇȀɕɖɐȂȅɒɕɗȂȅɑɕȇȂɒɑɗȇȅɒɕɗȂȅɑɕȇȂɒɑɗȇȅɒɕɗȂȅɑɕȇȂɒɑɗȇȅɒɕɗȂȅɑɕȇȂɒɑɗȇȅȆɕȀȁɒɕɗȂȅɑɕȇȂɒɑɗɐȅȅȄȄɗɕȂȀȃȄȋȀɕȀɐȀɕɕɖȆȅɑȇȁȊȋɒȆȋɕɑɒȁȂȄȆɗɑȇɑȊɑɑȃȀɖɒɑȆȁȁȄɖȆȂȇȇɖɒɐȀɖȋɑɑȂɑɑɗɕȅȅȆɑɗɑȊȄȃȀɑɖȁȃȊȅȋɒɖɗɑȁɒɐȋɑȁȇɖȂɒȁȀȀȀȆɖɐɒɑȊɒɑȆȋɒȆɕɕɗȀȀȀȇȄɒɕɖȋȃȄɒɗɗȅȊɖɕɑȂȄȋȀȆȆȅȇɗɕɑɑɑɑɖɗȊȁɒɑȂɑɕȃȂȂȀɒȇȇȁȀɒȇȋɗȄȄȀɒɖȆɕȆȊɖȁȁɗȀɐɐɒɐȊɒɗȆȆȄɕȋȆȆȊɑɖȁȄȇɒɗȀȄɐȀȀȃɐȂȀȅȅɕȅɕɒȄȅɐɒȅȇȁȊȋɑȆɖȅȀȇȀȄȅȆɑȀɗȇȅȂɑɗȂȀɗȇȂȊȆɗȆɕȀȁɑȋȀȂȅȆȀȋȂȂɖȋȇȇȂȂɒȄȊȊȂȁȋɖɐȄɐȇȁȃɐɑɑȁɗɗȅɗɐȇȆȄɑɒɐɑɗȄɖɒȋɖȀȆȆɐɕɗɖȀȅȇɕȃȂɑȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȃȄɑȄȇȃɒɒȁȇȃȅȃȃȃȃȋɕȂɒȃȃȃȃȂȆȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȇȅȋȅȆȅɗȅȆȁɕȄȇȅȋȅȆȅɗȅȆȀȂȁɖȄȋȅɗȅɐɖɐȆȊȇɗȋɑȂɑȀȄȂȋɑɖȂȄɕɒȂɕȋȅɑȊȀɑȂɖɗɑȀȀɕɖȆȋɖȁȃɗɖȀɑȂȊɗɑȇɗȊȇɗȇȁȄȅȊȀȊȁɒȀȀɐȁȀɐɕȁȋɗȅȋɐȋɐȁȇɖɕɒɖȃȊȋȂȊȁȊɐȄɒȁȊȂȇɗȁɗȁȇȀȃȀɑɗɕȆȆȃȇɒȃȀȃɗȀȇɕȇɗȁȂɕɑȀȊȃɗȃɒȅȀɕɒȁȊȁɐȅȅȀȋɕȅɐɑȊȇɑɑɒȃɖȋȇɗȁȀȆɒɐɕȆɕȂɑɐɒɕȂɖɑɗɒɕɕȇȇȋɖȀɑȊȄɒɖɗȁɐɐȆɗȅȃȊɒȇȃɐȊȂɒɐȅɑɗȄɒɖȀȋɑȅȃȆɑȀȊȃȇȇȁȋȋɑɑɑɕȅɑɗɖȀȅȂɒȆȅɗȆɑȋɐȋȀȁɐȃȁȊȋȅȇɑȃȅɑɐɕȁȂɑȀɒɕɖɗȄɕɕɐɗȂȆȆɑȃɐȄȂȀȊȋȇȁȇɑɗȋȅȄȅɐȃɕȄȇɖɗȋȇɕȀɖȊȆɖɑȆɐɒȇȁɗȂȃɐɗȋȂȆȀȁȋȆȊȊɖȋȂɑȂȀȊɒȃȁȁɖɒɒȀȇɒɖȇȅȂȇȊɐȃɒɑɕȁȊɒɖɗȅȂɗɒȄȆȊȇɗȃȂɐɒȅɐȁɑȃȀɒȊȄȃȄɑȄɑȀɐȇȅȁȂɑȇȋɖɒȆȇɑȄɑɑɕȄȃȀɖɐȃɖȁȆɕɐȅȊȊȅɐȃȋȀȂȀɗȊȁɒɖɒȂȅȅɒȂɑȃɗȂɒȇȁȅɑɕɗȋȊɐȃȆȊȋȆɒȁȄȃȃȄȄȅɗȀȂȇɖȇȇȇɖȋɕɖȂȂȊɑȄȁɗȃɐȂȋȂȄȂɗȆɗɗɑȆȂȄɕȄȅȄȆɕɕȅɒȄȆȅȊȋȇɕȊȂȅɗɑȊȁɗɗȆȃɕɗȁɗɖɐȂȅȃȅɗȂɒȇɒɖɖɐȅȋȀɐȆɒȂɒɑɒɒɖɖȄȀȅɕɗɒȆȄɕȃȆɐȃȄɐȂȀȀȄȅȋȃɗȊɒȋȀɖȅɗȁȊɕȃȁȋȃȀȃȂȇȀȀɐɗɑȊȊȇɑȂȆɖɒɕɗȀɖɑȄɑȃɑȅɐȃȊȊȇȂȄȃɗɑɖɕɑɒɗȄɖɒȀɒȅɖȂȇɑɕɖȂɑȂɑȄȋɗɕȊȀȂɕȃɗɒɕȇȃȄȊɗȂɗɗɐȃȃɕȋȄɐȂȁɒȋȅȁȆȆȃȆɖɕȇȃɐȀȂȅȊɗȆȃȀȆȄɐȀȁɑȆȃȆɖȅɐȅɖɖȃȆɑȋɖɗɕȄȄȆɑȂɒȆɖȋȂȂȁȋɐɑȁɐȊȃȅɗɒɕȂȊɒȋɗɒȃȊȋɖɗȂȁȀȁȁȅɕȋȋȅȂȂɗɖɕȂɗɐȅȂɒɑɑɖȋȃɒɕȆȃɗȆɗȁɖɒɐɒɖɗȀȀɑɖȅɗɒɗɒȆɖȃȁȂɒȂȇȀȃȂȆȃɐȊȃȆȂɐȅȆȂȅȊɕȇɕɖȂȂȋȋȇȃȁȂȄȃȃȋɐȇȅȂȇȆȊȃȄȁȋȇɖɐȇɐȁȊɑȋȁȋɐȀȃɗȂɖɐɗȇȊɗɒȂɗȀȂȃɕɕɖȆɐȄȆȆȁȆȂȆȂȂɑȃȃȄȇȂɐȊȀɒȅɕȃɒɗȊȇȅȊȀɖȇȅȀɑȂȊȃɒȁȁȊɖɕɗɒȊɕȃɒɒɕȄȅȃȊɕȁɕɒɗȆɒɑɕȀȁȄȁɕɐɕȊɕɕɐȄɒɕɖɕȇɖȊɕȊȊȀȊɕȂȄȅȀȅɕɗɒɗɗȃȃȆȊȆɐɑȅȄɑɕɑɐȀȆȄȄɕȀɗɕɕɗɐɕɒɕȀȊȄɖɕɗɕȀɖɕɑɗɒȋɐȅȄȅȆɕɐȊɑȊɕɑɖȄȋɕȀɗɑɖɕɕɕɖȇȊɖȅɑɑȇɑɖȄȊɕȂɖȅɖȆȋɑɗȄɗɕȄɖɕȊɐȄȋɕɐɕȃɐȄȃȊɕȋȁȆȂȂȊȄɖȋɐȆȁɐȋɒɐȆɑɕȃɗȇɑɒȇɑȆȁȀȂȇȂɐȀȃȃȄȃȇȇɗɕɐɗɖȁȀȋȃȂɒȋȅɐɖȂȅȄȀȂȃȀȂȊȊȃȀȅȃȅɕȇȋȃȁȄȂɒɕɒɗȅȂɐȅȃȅȃɐȃɕȆɒȃȂɖɐȄɕɑȆȇɐȋȋȆȃȊȄȋȄɗɕȅȆȃȁȀȄɐȊȇɗȃȂȊȇȄȃȅɖȃɐɗȁȇɗȆȋȃȋȄȋȇɖȃȂɖɒȂɐȅȀȊɗɗȊȇȅȀȊȆɒȀȀȃɐɑȅȁɕȀɖȃȄȇȆȅɐȅɗɗȃȆɖȃɐȇȀȇȄȅɑȃȊȅɖȆɐȂȅɐȁɒɗȅȀɗȀȁɑȊȃɐȂȁɒȋɗȂɑɐȋȀȇȆɐɒȇȂȃɐȀȀɐȋȁɗɗȊȇȄȁȅȂȃȂɒɐɐȂɖȁȃɒȇɐȆɕȆȂȃȋȆȊȇȀȃȀȁɖȅɗȅȃȀȅȇɕȆȃȃȀȁȋȅɖȇȂȋȋɗɑȇɗȆɑȇȀȁɑɒȋȂȆȁȊȂȊȄɑȊȋȊɒȃɐȋɑȄȂȅȊɑɐȀɕɑȆȅȋɕȅȃȊȀɕɑȀɖȀɐɗȂȊȂȅȁȅɕȃȃȅɐȄȁȃȊɑȂȂȅɐȅɖɑȅȃɐȅȇȂȅɒȅȇȃɐȆȁȆɐȇȅȂɖȃȃȊɖȊȋȇȋȂɖɐɗȅȊɒȋȃȆȊɐȄȂȊȂɖȊȂȋȅȁȅȁȃɗȁȁɐȋȊȋɐȊɖȅȀȅȊɗȅɑȄȇȅɕȃɒȊȊȀȂɒȄɕɗȂȃɐɕȆȀȂɗȇȊȀȊȊɒȊȋȊȃȃȄȋȃȊȃȀȁɑȁȇɕȁȅȇȂȃȁɗȁɒȊȊȂȀȀɐɒȊȁȀȁɕȅȂȀȀȅȂȂȇɑȂȇȆȋȄȄȃȋȀȄȊȁȁȃɕɒȃɖȊȂȄȆȊȂȃȄȊȃȅɗȇɗɕȄȄɗȃȇɑȆȄȇȆɕɑɐɑȄɖɕȃȊȂȊȀȁȁɕȂȃɗȊȀȀɒȀɒȅȁɗȃȂȋȊɑɖȂɕɖȄȄȋȃɐɒȃȄȁȆɖȆɗɗȀɕȆȂȇȅȆȂȄȋɒɕɐȊɒɑɐȄɑɖɕȇɕɗɖȋȆȋȋɑɖɕɖɖɖɑȊȆȊȄȀȄȄȁȃɖȊȅȅɖȃȅȆɐȇɗɐɒȄɐȋɑȋȊɑɗȅȁȆȄɐȂɑȅɖȆɗɑȋȃȀȇȁȁȀɕȇɖȂɖɑȄȅȂɕɐɐɑȁȀɑȆȃȅɐȂȆȃȀɕȇȄɕɗȊɕɖȆɕɑȅɕɕɕȀɑȁɑɗȅɗȀɕɖɕȆɖɒɐȆȄɕɒɒɐȁɖɕȁɐȆȄȆȆɗɑȊȇȊɑȄɗɖɗɗɐȄȃȋɖȀȁȀȀɖɐȄɕȃȋȃȁȊȅȆȅȄȅȁȄɒɗȂȆȃȀȇɒɒȋɒȀȁȆɒȀɖȁɒȇɐȂȀȆȂȆɐȃɐɒȄɖȂȅȁȃɒȆȇɗȊɒȁȋȇȄɕȋȅȄȋȄȁȊȇȋȃɒȊȂȋɒȅɒȅȇȅȋȋɗȊɐȁȄȆɐɐɒɐȁȊȅȂɖȁȅɐȆȃɐɗȇȅɗɕɑȁȃȀɐɕɗȁȇȀȂȁɖȆɒɗɑȆȆɒɕȂȄȇȁɒȃɐȃȃȆɕɑȆȋɑɑȀɒȆȅȋȂȄȁȄȂȂɐɕȆɑȊɑɒɗɗȆȅȀɗȋɗȁɑɗɒɒɐȆɖɒȄȂɑȊȁȃȁȃȅɗɗɕȋȆȇȇȅȊȀȃȊɗȇȇɐȀȇȃɒȁȆȆȀȇȆɖȇȃȇȁɐɗȅɐȁȄȁɐȀɒȃȅȂȅȅɗɖȊȄɖȁɑȃɑɕȆɑȆɐȋȋɒɗȋȄɕȂȅȊȃȀɕȅɐȄȋȅɖɐɖȇȋɒɐȀȄȋȃȅȂȁȇɕȀȊȇɗɑȂȄɗȊɗɗȄȊɒȅɑȄȃȆȆȀȊɕȄȅɗɗȀȃɑɗȋɖɖȇɑɒȊɑȇɐȅɑȁȇȇɒɐɑȇɗȁȄȆȂȆɒȋȅȃȊȋȋɖȃȄɒɕȀȋɖȄȀɗɗȆȊɒȆȆȇɒȀȁȄȇȀɑȂȇȊɒȀɗȆȄɖȂɕɑȊȊȅȁȁɑȁɒȅȃɗȀȋɗȀȅɑɗȅɒȊɗȋȄȀȃɗȇɕɑȋȃȊɐȂɑȇȅɑȋɕɐȆɒɗȆȃȂȇɗȀɒȊɕȃɐȄɒȇȅɖȃȁȂɐȅȄȆɗȀɑɖȇȋɑȇȃɕɕȂɑȅȆȊȊȆȁɐȅɕɑȋȃȁȆȀȊȇɐȄȆɖȆɕȀȇɕȂȂȋȄɗȇɐȁȁȋȂȆȅɑɑɗȊɐȃȅȊɐɒɗɑȋɗȆɖɒȁɗȀȊɐȄȃɕȊȇȆɐɐȄɕȊɕȃȁȁɒȄɑɖɐɒȇȊȋȅɖȀȀȂȃɐɕȊȊȅȊȅȆȆȆȆɕȇɖȆȇɖȋɐɑɗȊȄȃȇɐɑȃɒȊȊȃȊɗȁȇȄȇȊȄȇȅɒȋɗɕȃȋɐɗɖȃȆȁȁȆȃȆɖɒɑȁȅȃȀȂȋȁȂɐȅȊȄɗȂȋɐȂȃȁɗȁɗɖɖȆȆȂȇɗȄɖȇȅɒɑȂȂȆɑȆȆɕɐɗȆȅȆɑȂȇɖȃȅȊȃȁȂȅȁȄȇɒȆȊɐɐȄȀɑȋȁɒȁɕɖȊȊȇɖȅɒȂȊȋɒɖɐɕȇɒɒɕȁɕȁȅȀȀȋɒȅȆȊȁȁɖȄɗɖɒȆɖȅɐȁȇȀɑȇɒɒȁɑȊɖȆȃȃȊȂɒȄɒȅȆȊȀɕɗɖɗɕȁȂȆɕȅȁɑȆɗȁȄɗȋɗȆȆȁɖɗɗɖɑȆɒɗȄȁȊɑȇȅɖɗɑȁȊȄȂɕȊȃȀɒȂȇȇȅɗȀȆȊȋȇȅȇɗȀȁȀȅȆȃȆɑɑȆɖɒɗȇȄȅȄȋȁȂȁȋȃɗɑȄȆɐȊɒɗɑɐɖȋȋȆɗȊɕȃȅɖɑɒɑȆȅȂɖȂȃɐȆɑɗȆȁɗȆȀȅȆɖȇɕȊȃɗȂȇȀɑȂɕȁɕɑɖȁɑɒȀɒɐȀȊɐȁȊɒɒɕȃȇɐȀɐȁȀȃȇɐȆȃɕɐɑɑȊȂȁɒȋɗȅȇȁȆɗɐɖɑȋȀȆɒȀɒȋȅɑȀɕȄȁȀɐɗɕȃɗɖɒȆɖȆȃȄȂɗɒɗɖɒȃɖȁȀȅȆɐɒȄɗȁɕȅɕɐȇȅɐȆɕȄɑɐȇȅȅɗɖȃɗȆȊɐȄɖɒɕɕɖȆȋȃȇȋȆȁȄȅȊɐɗɐɑɐȄȂɖȋɒɖȄȂȊȀɐȆɕɑɐȄɗȆȂɖɗȂɑȅɕȅȃɗȁɖȁȊɒȄɗȁȆȁȇȅȊȊȆɒȋȄɑȄȃȆȆȂȊɒɑȀȄȀȃɑȆɕɒɕȅȀȄȀȃȂȅȂȁȊȂȄȊɗȇɒɐȃɕȀɑȋɗȇɖɒɕȆȊɖȊȀȇɕɐȅȂɐȆɖɗɕȄɗɒȊȆȇɖɗȃɖɐȆȆɕɒɐɗɒȃɗȆȂɕɕȅȃȀɒɕɗɗȂȊȀɖɑȅɒɗȂȀȃȆȄȅɕɗȇȅɖȃȀȅȃȄɖɗȇɒɑȀȂȅȃȇȂȆɑȄɖȊȇȋɕɒɖɗȇɖɒȆɖȆɗȅɖɑɑɖɗɑɕȁɗɑȃȀɗȄȄɕɑɐȋȋɑȆȊȋȄȊɕȂȆɗȋȇȆȄɕȂɗɒɕɕȂɑȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȁȂȊȄȁȆȋɒɗȅȃȀȃȃȃȃȇɖȃɒȃȃȃȃȂȂȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȀȅȆȄȇȄȇȅȊȅɖȅȄȄȀȁɖȄȋȅɗȅɐɑȇȆȅɗɑȅɖɗɑȀȋȂȃȄɗȆɕȅȃɕɕɐȂɗȃɕȀȀɒȊȅȅȇɐȊȇɒȋȇȀɒȇȆȅȁȇȄɗɑȂȇɕȂȄȅȆȂɑȊȂɕȇȃȇȊȊȇȇɗȋȇȀȄȊȃȊȇȂɗȄȄɑȂɕɕɑɖȇȀȇɒȋɐȊɗȁȅȁȋɗɐȁɗɕɒȅȇȅɒɐɖɐɐȊȊȁȂȄȊȅȅɖȋȄȄɖɕȊɕȂȋȂɗɖɗɑȃɗȁȇȇɕȃȄȊȂȃȆɗȋȇɐȂȃȋɕȀȆɒȀȇȋȇȅɕɖȅɐȂȊȄȄȆȀȂɑɖȃɐȇȅɗɒȁȃɗɖȁȃȁɒȀȋȊɖȃȄȃȄɒɐȋȀɕȄɗȄɑɕɕɕɕȅȅɖȊɕȅɑȅɐȃɐɑȋɖȊȂȂȆȃȄȃȊɗɑȀȄɒȂɖȅɐȋɗȊȂɕȊȅȇɒȁɖɑȁɗȅȅȇȋȆɕȃȋȋȊȀȊȋȃɒɗȆȃȃɐȂȊɕȋȆȇȊɑȃȊȇȀɖɒɑȂȊȀɖȀȆɒȀȃȋȊȃɐɒȊȃȋȁȆɖȅȀȃȋȊɐȀȄȃȂȅȃɐȀȇȅȁȂɖȄȇȋɒɖȄȃȀɐȆȊȋȊȂȆɒȃȊȁɗȆɒȅȀȇȀȄȁɗȂɑȅɒȇɐȅɐȀȋɕȋɕȆȃɖȄɖȇɖɗȇȀȊȅɒȁɖɖȂȋɖȅɐȅȅȆȊɐȁȋȇɐɒȂȃȅɐȂɕȆȊȅȇȋɖɗɗȊɗȋɕɕȅȆȃȀȄȃɖɑȇȊȄȅɗɕɗɑɐȇȋɖȆȂɖɕɑȄȋɕɐȁȀȀɑȅɑɑȂȄɒɒȄȊȋɖȀȋɒȄȀɐȂɑȁȃȊȆɒȋɑȂɗȅȄȃȇȂȋɐɕɒȃȁȃȊȀɕȁȅȇɖȆɖȂȂȀɗɖȄɑɖȋȃɗɐɐȀȂȅȂɗȂȆȋȇȇȄɒȂȆɑȊɗȆȅȊɖɕɖȂȋȇȂɕɐȋɒȅȃɒȅɕȂȋɕȆȂɒȇȃȀɐȆȇȇȂɕȂȋȄɖɕȁȇȇȊɒȊɖȄȀȁȇȀɗɕȇȇȃȁɒȋȆȆȇȁɕɑȋɖȂȀɐȆȋȊɗɗɕȅɕɑȋȆȃɒȋɒȁȆȃȃɖȊɐɐɑȃȋɑȅȀȅȄȁɗȆȃȆɗȄɒȃɕȁɒɕȇȁɑȃɗȂȀɖȊȄȆȋɗȆȄȃɗȆɕȀɖȃȁɒȃɐȁȅɗȅȃɖɖȄȁɑɗɒɗȁȁȃȋȀȃȂɗȆȂȁȆȀɖɒȆɒɒȅɒȅȂȋȃȂɖɑȀɖɗɕȁȋɐȇȇȃɖɐɗɖɖȁȅȁȂɒɗɐɒȁȋɖȊɒȀȆɒɒȇɒȁȀȁȇȀȋɖɗȂȃȂȇȊɕɐȆȃȀȅȆɑɗȇȆȃɒɗȆȃȅɒɑȆȁɒȁȂɒɗȋȂȅȋȁȂɑȁȆɒȋɕȄȅɑɐȇȆɕɐȁȁɐɒȃȄȂȂȇɗɐɖɑȂȃɖȂɗɒɖȋɑȋȁɒɕɑȊȅȋȇȃȋȋɖȂȋȅɐɖȄȇȆȊɑɒɗȇȇȋȀȅɗȅȆȊɗȁȁɖȄȊɕɑɑȃɗȄȃɗȊɒȀɕȇȀȇɖȆɑȄȋȊȃȇȋɐȂȃȇȆȂɒɑɐɑȅɐȄȆȋȊɒȃȀɐȆȃȆȂȇȆɕȊȁɒɕɕȋȋȅȀȄȂɕȀɑȅɗȃȋȀȃɑɒȅȅɕɑȋȊȃɒɑɖȆȄȃȃɖȅȀȅɕȀȁȄɑȋɕȋɕȆȇȂɖȁȃȁȁȀɗȀɐȂȀȂɕɗɒȁȅȇɖɖȁȅȃɒȇɒɖȇȋɒȁȋȁȆɗȇȀɗȅɕȇȃȂɒɑɕȁɐȂȊȅȊȆɑɒɐȁȃȃȂȃȂɒɗɒɗȇȃȀɖȇȇȋȊɑɗȀɑɖȄȃɕȂȋȀȆȀȃɑȊȄɕȀȁɖɕɖȇȆȇȇȅɕȃȃɖȀȇɗɒȁɕȀɖȃɑȅȂɑɐȅɑȂȋȅȅɗȀɒɐɐȋɒɖɕɒȇɒȁɗȄɒȂȅȄȁȊɑȇȅɗȂɕȇȁɗɖȇȁɖɐɐȂȅɗȀȀȄȅȀɖɖȋɒȅȊȀȂȇɑȋȅɐɒȋȅȄɒȆȋȅɖɒȄɖɑɗɕɐɒɒɕɒɐɑȋȇȅɒɐȋɕȆȋȁȃȆȅȁȊȋȁȇȅȁɑȀɑȄɕȁȄɗȅɒȀȆȁȋɕɑȄȋȇȄɑɑɐɐȁȀȃȃȄɕȃȁȊȆȁȄȅȊȆȃȄɐȄɖȀȂɖɗȃȃɐȆȂȆɒȇȃɕȄȄȊɐȃɑȆȁȇɐɑȂɑɒȁɖȆȂȁɑȄȅɖȇɗȆȄȇȋȅɗȋɖɑɐȋȀȋȄȄɒɗȀȃɒȊɗɕɖɕȂȊȊɐɑȃɖȃɖɒɐɕɖȆȇɒȁȊȀȀɗɑɒȆȄȇȋɕȅɒȁɕȂȁɖȆȂȊȁȃɐȊȂȋȇȊɑȃȄɐȁɑɐȆɗȄȄȆȆɖȊɒȀȀȋȇɐɒɖȂȀɒȋɖȀɐɗɒȄȊɗȄȁɖȄȄȇȀɐȊɖȄɗȅɖɖȃɕȁȆɗɕȀȀɗȁȃȁȄȁȁɖȄȋɑɕȊɕȋȇɑȀȊȋȋȋɐɒɒɗȁȃɒȃȇɒɕȊȃȊȇɑɗɐɖɒɒȇɗȀȇȃɕȁȋɗȊȅɐȇɗȅȇɒȆȅȂɖȃɒɑȋȂȅȄɗɒȄɗȆȇȊɑȄȋɐȃȅȁȋȄɐȆȀɗɖȅȀɖȆȃȅɗȄȄȃȅɗɖɐȀɖȁȅȋȋɑɑɗɖɗɐȇȅɕɖɒȅɗɗȀɒȀȁɗɕȂɑȅɖȇȅȋȇɑɑɗȁɗȀɗɗɒȅȅɗɖȀȅɑȀɑȅȁɗȄȇɑȋȋȁȄȂɕɑȃȋȊȁɕȄȇɑȅɑȅɕȃȆɒȆȅȁȋɕȊɑȃɕȇȄɕɐȊȆɒȊȀɕȃȇɑɗȇȆȂȁȁɕɕɑȅȊȃɐɕȁȂȁɑɗȅȂȂȋɐɕȄɒɑȇɐɑɕȂȂȀȋɐȄɒɗɐȂȃȃȀɕɕȄɖȁȇȅȊȂȋȄɒȋȁȀɑȃɒɖȀȊȊȃɗȂɕɑɐȁȊȀɒȋȋɐɖɑɐɕȃɑȆȊȋȄȆȊȅȁɕȂȊȂɒȅȇȊȃȅɕɑȅȂȄɐȂȇɖɖȁɗɕɗȇȅȁȆɕȋȊȊɒȋȃȂɐɐɑȃȀɒɑȋɖɐȀɕɕɒȁȁɕȊɐȂȁȃɗȃȀȇȁɐȁȀɑȅȂȋȇɕȁɗȋȂɕȃɖȋɑȊȁɑɐȂȂɕȆȀɗȄȇȂȁɒɐȄɒȆȂȁɗɒȀȊɑɒɐȆȋȅȇȀɗȊɐɑɒɕȄɐȆɒɐȇȂɖȇȋɕȄȃɖɕȊɕȄȂȄɑȋɑȀȇȅɖȃȅɐɐȋȄɒȅȄɗɖȋȀɕȄȂȂɒȁɕȋɑȀȃȇȊɐȄȀȄɑȄȇȊȀȁȇɖɗȁȆȊȀȅɑɖɐɒɑȁɐɑɕȂɖȁɒȅɑȋȋɐȂȅɗȊɕȁɖȅɒɖȋȋɕɖȂɗȊɒɗȇɕɕȂȂɑɐɕɖȃɕȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȃȆȂɕɐȀȀɖɕɐȃȂȃȃȃȃȇɗȃȄȃȃȃȃȂȁȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȅȅȅɕȅɖȄȇȆȇȅȂȅȁȅɐȅȆȁɖȄȋȅɗȅɐɗɐȊȇȆɗȅɑɗɑȀȃȂȇȋȅɖɕȃȄɕɑȃɕȇȁɕȄȋɗȅȆɖȄɒȀȇɗɒȋȆȀɗȅɒɐȋȂɐȂɗȋȇȆɖȊȄɖȋȃɒȁɐȋɑȂȊȋȀɖȋɐȋɖȂȁȀȄɕɕȄɖȇȄɑȁȊȀȃɖɗȁȅɐɐɗȅȃȂɑȁɐȃȂȅȀɑɕȇȄȄɒȁɐȀɗȊȅȄȇȄɑɕȄȅɐȀȇɗȊȇȊȃɕɐɒɗȊȊȁɖȅȃȀȇȅȋȊɑȇɐȁɒɗȊȆɗɗȊȇɕȇɖɑɗȀɕȁɖɒȋȅȂȁȃȋɗɐɒɖɑȊȄȅȆȅȊȅȄȇȁɕȋȂɗɖɐɗɗɕɑɕɑɑȅɗȅȄȊȆɑȀȃȂȃȋɕȅɑȄȀȃȀȀɒȁɒȇȄȆȃȋɐɗȁɐɐɑȇȃɗȇɗȁȄȃȂȋɑȋȇȅȆɒȁɐȆȅɐɖȂɑȂɖɕȃɗȂȅɕȀȁɐȀɕɗɑȄȅɗȄȀȁȆȊɐȅȊȄȋȆȃȁɑɒȆȆȆɗȋȅȄȃȆȅȀȂȀɗɒȅȀɕɐȆɑȁȋɒɖɒɒȊȇȊȃȂɕȊɗɗȋȂɒȅȊȇȀɖɒȊɕȄȊɒȊȊȂɖȋȁɐɗȇɒɒȋȂȃȀɒɗȄɗȃɑɒɗȄȆȄɖɗɗȄȋȁȄȁȇȃȃɐɖɗȊɖȋȋɖȅȄɑȋɑȁȇȄȇɐȀɖȀɒȃȂȂȊȁȆɑɐȃȀȆȄȋȆȃȂȇɖɒȅȂɕȆȂȇȁȅȂɕȄȊɐɒȆȀɑɒȀȆɕȃȃɖȀɐɑȃȃɐȆȃȊȅȃȃȁɕȁȀȁɐȇɑȋȇȄȅȇɑȃȀȄɕȁȊȊȂȁȁȀȅȅȊɕȀȅɗȅȄȊɑɖɗȁȇȋɐȁȁȊȂȂȂɐȂȆȇȊȅȃȀɒɖɕȀɕȁȅȅȊȅȄȊȅȂɑȁɐȁɕɑȋȆȅȁɑɒɕȆȁɒȂɖȂɗȅȋȂɐɐɑȂɑȅɖȀɑɒɒȇɒɐȅȃȇɑȀȅɐȅȅɑɕɐȋɕɗȋȀȃȆɖȅȊȂȅȂɑȋɒȊɒȄɑȊȃȂȂɗȁȀȆȅȇȆɗȆɐȄȂɒȀɕȇɕɖȊȃȇȁɒɑȃȃɑɒȇȁɒȀȋȁɒȋȃɕɕȊȋɖȄɑȂȆȋȄɗȅȊȆȇȃȅɗɑȃɑȃȋȆȂȆȁɑɖȊɐȀȋȋɑȂɖȁȅȂɑȊɒȇȆɗȊȁɖȀɖȋȂȋȁȅɒȀɖɑɕɑȀɖȁȊɖȁɑɑɗȁȅɕɗɒȁȄɐȀȅȀɐȁȅȁȁȁȂȁȁȄȀɗɖȅȂɗȇȄȁȇɐɖɑȂȃɗɑɖȀȀɖɑȃɐȊɐȊȋȄȋȆȁȇȅȃȁɕȊȁȁȆɑɕȁɖȋȃɐɑȄȅȄȋɐȂȇȅɐȋȁȁȅɐȅɖȋȁȀȊɒȂȊȆɖȅȇɐȇȁȄɖɖȇȆȇȅɖȁɕɐȇɕȋɐȆɐɗɕȋɐɕɕȋɒȊȂȃȆȅɖȀȁɒȄȀȊȊɐȆȂȄȂȋɕȁɒɒȅɑɕɑȊȀȋȋɐȆɑȇɑɕɕȊɒȋɑȇɒȀɗɐɑɕȆɖɑȁȁɗȋɖȇȇȄȂȂȀȂȆȋȁɖȋɖɐȊȋɑȋȋɕɐɗȄȁȁɒȅȂȄȋɒɕȋȋȃɗɕȇȄɕɕɐȇɐȁɒȋɗɕȁȇɐȊɐȆȊɕɗɗȁȁɖɐȊɕȁɖȋȋɖɖɑȃȁȃȊɕɗȆɒȅȃɖȅȄȋɕȋɐɑȋȂȅɕɖɗȀȁȀɒȀɑɕȋȂɕȊȄȄȃȃȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊȀȄȅɗȅȇȊȂȋȃȂȃȃȃȃȇȃȃȁȃȃȃȃȂȇȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȄȅȆȅȁȆȀȅȆȄȇȄȇȅȊȅɖȅȄȄȀȁɖȄȋȅɗȅɐȊȇɗȂɐȂȇɒȃȀȀȂȂȃȃȅɖȃɑɑɖȃȀɑȋȇɗɐɗɑȅɐȋɑȁɗɑȁȄȇȆɑȂȃɒȊȄȋȂȂȇȂȄɗȋȃȀȇȊɗȅɗȋȀȊȊȇɐɐȋɒȇȅɖɖɑɗȀȀɑɒɖȆȆȂȂȁɕɖɗȁɗȊȀȅȇȀɖɖȅȅȄȅȅȋɑȀɗȃȅɕȆȃȅȊȊȀɗɐȆȇȅȋɕȋȅȊȆȆȅȂȃȂɗɒɗȄɗɗɐȀȇɕɒɖȆȄȊȀȊɑȋɗȅȋɒȋɑȋɗȅɑȂɑȁȋȇȁɒȀȃɕɐȃȄɒȀȂɑɕɑɐȊȋȄȆȄȆȃȄɒɑȁȄȁȋȇȆȄɖɑȁȂȁȁȆȄȁȋɗɒɖɗȂɗɑȆȁȆȁȅɗȃɐɑɑȁɗɒȃɖȆȁȂȁȆȋȋɕȁɗȋȆȁȇȅȆɑɒȇɐɐȂɑȋȀȀȅɑɕɖɖɗȁɐȃȂȂȁȅȆɑɕɐɐɒȃȄȆɕȃɖȅȅȆɐȆȆȆȀȄɗȅȇɕȁȁȊȃɒɑȆɒɗȄȄȄȃȇɑȅɖȋȄȂȃȇɑɗɕȅɕȀȁȃȇȂȂȁȊɕȁɗȅȁȄɕɖɗȅɑɒȆȀɑȇȋɖɕȁȀɒȅȆȄȁɐȃȁɐȄȊȀȃȄɐȄȊȅȋȄɗɕɐȅȂȇȅȆȄɕɕȁȃɕȇȁɖȂȀȆȀȆɑȋȅȂȁɖȅȀȋȆȂȇɕȇȊɕɑɒȋɖɒȇɕȂȋȄɖȋȂɐȊȄȊɐȃɕȋȂɕȀȃȅȆȀȋȋɕȊȋȂɐȃȊɐȀȃȄȋȇɑɗȆȅɖȋɖɒɕɑȇɗɒȇȅɐȆȄȇȂȁȇȋȊɒȇȅȇȁɒɗȆɐȀȄɒȁɖȁɑɒȆȆȇȀɐɕɒȄȄȆȋȆȁɑɖɐȊɗȇȀȂȅȇɕȀȄȊȅɗȇȀɒȃɖɖɕȂɖȂȇɖȃɒɕȀȅȄɖɕɕȀȃɕȃȃȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊȁȄȇɑɑȆȀȄȄȃȂȃȃȃȃɐɕȃȁȃȃȃȃȂȃȃȃȃȋȃȂȅȇȅɕȅȀȆȃȄȁȅɕȄȃȄȀȁɕȅȂȄȃȄȃȁɖȄȋȅɗȅɐȁȃɒȁȃȇȃȂȁȋɒȃȃȃȃȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȊɐȆȁɐɑȇɖɐȀȀȃȂȃɑɐȁȀɕȂȃɕȆȂɖɖɗȇȇȊȇȂȂȆȆȇȆɑȆȄɒȋȃȋȄȂɖȃȁȆȀȆɒȆȅȄɖȀȅɐȂȁȃɑɐȄɑȅȅɐȋȀɐȋɗɕɑȀȅȊȅȋȃȋɖȁȇȅȇɖȀɑɑȀɗɖɕȂɖɐɐȇɑȃɕɖȅɐȄȆɕȁȋȂȀɖȁȋȅɑȆȅȅȊȀɖɐɑɗȁȃȇȋɗɑȇɒȆȀȁɕȆȁɒɗɗȂȆɑȄȅȄȊȄȅȊȂȁɒȁȀȃɒȆɗȃɗȅɖȃȁɒɖɗȀȃɒȇȅɑȄɖȄɒȃȁɐɕɗɖȀɒɕȇȆȂȅȂȇȋȇȋɐȁȋȇȆȆɗɒɐȇɖȋȊȅȋɐȃȆɗȊȅȃȁɑɐȁȋɐɗɒȋȅȀɒȊȆɕȆɒɗȋȋȃȇȄɗɐɗȅɐȆȆȁȊȋȊȀȄȆȅɑɖɑȄȅȋȁȁȊɑȅȄɗȊȋȁɖȂȅȄȇȇȆȀȅȁȄȊɖȅȇȅɐȂȄȇȆȃȆɐȄɖɐȇɕɕȋɒȊȅȆȅɕȅɕɖɐȁȇɑɗȂȀȊɗȁɖȀȆȃȅȃɖɑɑȇȋȋɐȋȂɕɕɑȇȊȃɗȅɐȁȇɒȃɑȃȆȂɖȋȇȁɑȆɐȋɖȄȇȇȋɕȃȃȊɖȇȆȋɗȋȂɖȄɐȃȋȅȃȁɕȅɗȅȊȄȋȇɒɕȋȃȃɗȂȆȅɐȂɒɖȂȋȆȋɐȊȇȂɗɐɕɕȀȃɑȅȃȂȀȃɐɗȄɐɖȅȊȁȆȇȆɒȇȆȇɕȊȋȀȊȁɗɖȃȅȆɑɐȆɖȇɖȊȅȃȀȆɖȊɖȄȋȂȇɗȋɕȃȃɗȊɗɕɒȁȄɐɕȄȁɒȄȅȀɐȃȀȀȅȋȆȄȃɒɕɐɐȅȃȅȇȁȋɐȋȊȋȂȄɑȆȂȄɒɖɕȊȄȅȀȄȁȁɗȋȇɒɒȂȄȂȇȀȋɑɕȀȇɒɖȋȋȃɐȃȄɖȃȋɗȋɗȋɗȅȃȊɗȀɕȂȇɗɕȄȋɒȄɖɖɑȋȇɒȇɕȅȊȂɖɑɒɕȄȋȃɑȀɑȆȄɗȋȊɑȀɖȊȁɖɕɖȂɗɕɖȇȅȇɗɗɑɗȋɒɐɗȇȂȋȂȃɐȊɐɐɕɒȄȋɑȇɕȀɒɑȃȁȆȂȅȇɑɗɒȅȇȀȇȀȀȂȁȄȃȇȄɑɕɐȆɖɑȆɖȊɕȅȅȇɗȋɗɖȆɕȂɐɐɗɕȇȅȂɕɖȆɐɑɕȃȀɖȄȊɑɖȊȋȅȆɕȇȂɗɑȁȀɑȄȁȊȇɐȃɕȋȄȃɕȋȂȄȃȃȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɕȂȁȂȊɕȁɐȄȄȃȂȃȃȃȃɕɕȃȁȃȃȃȃȂȂȃȃȃȋȃȂȅȇȅɕȅȀȆȃȄȁȅɕȄȃȄȀȁɕȅȀȅɕȄȁȅȆȁɖȄȋȅɗȅɐȁȃɒȁȃȇȃȂȁȋɒȃȃȃȃȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȋɐȊȁȆȂȇɕɐȁȀȃȂȃɐȄɗɕȇɗɕɐȃɖȇɑɗɕȇȄȀȄȇȋȂȃȊȄȀȂȋȁȂɒȊɖȁȇȀȂȂȂɒȀɕȂɒɗɑȅȃȄȆȇɗȅɒɖȅȊȃɕȃȅȄɖȄɒɑɑȃɗȋȅȋɑȊȋɕȋȄȅɗȄɕɑɗɗɑɕɗȄɕɕȀȆȊɗɖɐȆȆȂɖɖɐɐȃȀɒȆȊɖȋȀȂȋȊȄɑȂȂȃȊȇȃɕȀȇȁȇȋɑɗȂɒȊȀȊȄɐȆȁɐȂɐȊȂɐȃȁȂɗȀȋȁɖȆȋȆȋȅȀȂȀȊȋȃȁȀȊȀɖɐɕɒȁɒɖȆȁȅɖȂȋȆȋȆȁȄȆɑȂȋɑȃȁȋɐȂȃȆȆɖȇȊɑɑȋȇȊɑȀȂȆȊȁȀȊɒȋȇȆȁɐȄɗȄɒȃȊȋɖɑȄȊȇȁɕɑɖȁɑȁɑȃȋɒɒȂȇɕɖɗȋɒȂɒɐȅȀȄȅɐȃȆɑȇȂɕȇȆȇȀɒɒȃȃȊȊȅȃɐȋȅȋȁȆȂȋȊɒȆȅȊȂȂɐȁȆȃȆȅɕȁȆɐɗɗȅɖȅɑȆȋȃɖȃȂȇȄȁȆȃɒȃɗȂɗȂɑȋȂȄɗȀȀȀȋɑȅȃȊȆɑɑɗȋȆȃȆȄȄɖȊȃȇɒɖȁɐȂɐȃȇȆɕȇȆȇȅɐɖȊɑɗȊȀȁɗȆȋȊȅȅȆɒɕȂɐɗȇɒȋȊɕȀɕɒȅȅɕɕȀɐȄɖȄɕɒɒȊɒȂɗȇȊȆȆȄȂɐȇȋȊȅȃɒȊɖɒȃɐȇȂɐɑȁȊȇȊɖȇȀȂɕɑȊɖɗɐȄȁȄȄȃȅɐȋɖɗɑɐȇɐȄɗɐȃȁɐȀɐȁȅȅȆȀȅȇɐɑȅȃɐȅɑɖȄȁɕȃȇɑȃȋɒȅȅɑɒȅȇȃɗȇɕȃȃȊɒȋɒɐɗɕɐȃɒȂȁɐɒɐȄȃȆɖɒȅȊȀȄȊȇɐȋȃɖȀȆȅȂɒɕȇȃɑȅɗȁɖɖȊȂɐȄȋȀɒȅȄȃɖɖȄȄɖɐȀȇɑȃȊɖȁɖɖɕȃɐȄȄɗɑɕɑȊɒɒɗȆɐȁȇɖȆȅȀɕȁȆȂɑɗȇȇȇȊɑɒȅȇȄɗɑȊɑȂȊȇȂȃȇɗɖɒɖɒȇȀȂɕȄȆȇȄȊȂɗɗɐȀɕȁɐȅȅȁȇɖɑȇȄɕɗȇȂȂȋɐȆȅȂȀɐȆɐɐȇɒȀȁȇɑɖȇȊɒȁɖȋɑɗȂɒɑȀɗȀȄɕȂȅȆȇɐȄȃȂɕɖɒɕȄȋɗɑȆȆȀɐȃȊȀȇȇɖȄȆɑɕȅɐɕȅȃɗȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȀȃȇȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊɕɖȅȊȇȂȁȁɒȃɑȃȃȃȃȆȀȄȃȃȃȃȃȃɕȃȃȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȀȄȇȄȊȅɐȅȆȄȀȁɖȄȋȅɗȅɐɑɐȊɗȆɗȄȀɗɑɑɒȂȂȋȅɖɕȀɑɗȀɕɕɐȃɗȂȆȆȄɑȊȂɐȋɕȁȅȄɖȁȀȊɐɖȂȊɗɑȋȊȅɑȇɕɖȀȂɐȊɕɐȋȅȊɒɖȁȂȂȁɑȁȆȃȋȀȋȇɐɒȋɕɗȋɖɖɒɕȁɕȃȃȆȁȂȁɖȇȁȆȁȋȁɖɑȋɕȆȊȆȁɗȆȂɕɑȃȃɐȇȋɑȂȄɐȃȋȁɒȇɕȇɗɑɖɕɐɕɒȊȋɐȄɖɕȂɑɐȂȃȁɒȀɑȂɑȇɗɗɖɖɕȋɗȁȁȊɖɐȆȁɒȂȂɗȊɐȀɗȊɖȋɐȄɕɗɗȆɑɑȃɕɒȀɒȋȁȋȆȊȊȅȀȃɒȊȀȁȄɖȀȅȄɒɖȂɐȆɖȋɕȄȇɕȄɕɕɗɐɑȅɕȇɕɒȄȇȆɕȊȁȁȄȊȂȂȅȊȇȃȆȅȊɐɒȅɕȂɗȊȅȋȆȂȊȅɐɑɗȀɕȂɑȋȋȋȂȄȀɐȅȆɐȆȄɑɑȆɖȇȊȊȀɖȀȋȆȄȄȊɐɒȇɒɕɗȀȁȄɕȂȋɒȄȁɐȄɕɒɐȊȅɖɕȅȁȊȆȁɖȆȊȁȊȅȅȇȁȋɒɕȁȅȆɑɐɑɕɑȄȄȄȀɐȅɒȀȃȄȊȂɕȋɒȊɒɐɕȇȆɐɐȀɕɒɑɑȋȇɒȄȊȆȅɗɒɕȋȄȂɐɖɒȆȁȅɒɒɒɐȆȋȋȋȅȆɑȂɒȁȀɗɕȆɒȂȀɗɒȊȀɐȆȊɖȅȁɒɖȅȇȆɒȂȇɕȀɒȊȆȀȆȁɕȅȆȁȁȆɑȅȀȁȅȋȄȃȃȊȇȋɒȀȋȆȄȋȆȊɒȊȄɖɕɕȆɐȊȀȇȀȆɑȁȁȋȂɗȀɖɗȊɑȀɕɕɒȆȄȁȃȀȀȋɐȁȃȂɕȅȃȂɖȃɑȋɖȃȀȋɐȇȆȂȋȀȂȋȂȄȁɕȁȊȄɕȂɖȇȆȅȊȄɐȄɒɕȀȊȃɒȊȊɐɐɗɒȇȁȅɖȊȆȀȋɒȄȇɒɗȁȁȃɑȂɖȄɗɗȁȅɒȁȅȁɒɕɖɐɐɖȄɒɐȊȁȅȆȅȂȆɖɖȅȄȄȄȊɕȀɑȁȄȊȅȆɕɕȆɐɒȊɒɐȁɐɒȁɒȄȆȀȆȅɐȇȇȁɗɐɖɑȆɒȅȋȆȇȁɒȀȇɕȆɕɒȀɐȁɑɐȇȇȋȂɕɖȂɒɐȁȋɐɕȃɑɐȂȆɒȃɕȁɖɐɐȀɕɒɗȇȄɖȁɒȁȄȇɗɖɑɖȂȃȋȊȂȋȋɗȇɗȋȊɐȆȄɕɕȆɐȂȆɕȇɐȊɖȋɗɕȅɕȄȆȄɖɕȆɐȊɒȂɒȅɐɑɗȁȄȆȊɕȅɑȃȄɒȋɕȅȄɖɕȄɖȇɐɗɗȊɒȀȋȅɕɐɗȀȇɕȄȅɐɐȇɕȁȄȄɗȀȄȀȂȀȀȋȅɖȇɖɒɐɕɖɖɑȊɐɖɖɕȁɕȆȁɑȆɑɕȃȊȁɐȆɐȁȊȅɐȀɖȅȁȆɗȄȂɗȄȆȄȁɑɐȅȄɒȃȆȁȂȋȆɕɖɐȂɕȄɗȆɐɑɗɕȋȆɖȊȊȂȅȅȅȆȆɒȊȊɒȇȁȁɐɒȃɕɖɑɑɐȅȋɖȇȂȋɑɖɑɕɖɒɑȄɑɕȀɑȇȀȅȊȆȀɖɐɒɖȄȆɕȆȆɕɐɐȋȊȀȅȊɒȊȃɕȊɐȋɗȅɐȆȊɕɒɐɗȂɕȀȄȄȄɑȊȆȃɑȊȀȅɐɖɗȊɖȋɒȀȁɗȆȀɑɕȀȊɖȆɒȊɑȋȂȅȇȊɐȁȀȀɖȄȋȀɗȊȇȁȁȇɕɐɖȄȋȁȅȄȀɕȃɒȊɖȅɐɗɖɕɕɕȀɐɒȄȅɕɖɖȅȋɗȆȋȆȆȊȊɕɖɕɕɖȃȅȇȅȁȄɑȋȂȁɐȊȁȁɕɐɕȀȂȆɕȂɒȁɑɖȊɒȀȂȊȀȀȊɒȄɐȀȀȃȂɗȁȄɐɑɒȂȁȊɑɐȁȅɗɕȋȄɕȆȅɑȃȇȊɒȀȇȇȆɑɕɐȋȁȀȀȀȀȊɖȇȇȊȀɗȄȃȋȆɑȄɗȂȇȅȁɗɕȇȇȂȇɐɖɗȊɑȅȀȀɒɑȆȄɖȄȅɖȀɕȋȆȁɒɖȋɖȃɒɗȃɒȀɒȄɐɒɑȋȁȋɖɗɖɒɒɒȃɖȀɑȄȁɒɖȋɖȇɒɗȃɒɕɒɕȃȆȅȃȆȆȊɐɐɕɕɑȀȁȃȊȂȁȆɕɐɑȊȀȅȁȁȁɐȃȅȆȃȄȄȄȂȀɐȅɖȇȇȄȀȀɐȅȅȇȀȄȀȀɐȆɖȇȁȄȀȀɐȆȅȇȂȄȀȀɐȇɖȇȃȄȀȀɐȂɗȂɗɐɗɕȂɕȇȅȀȀȇɐȄɗȀȇɗȂȂȊɐȆȁɐȆɑɖȆɖɖȋȄȇɕȅȃȀȇɕȅɕɖɕɖȅɖɖȊɖȁȀɐȁɑȋɑɑɒȄȋȇȀȃɖɖɖɖȂȊȁȃȋɐɑɑȄɑɐȃȃɕɖȀɖɖȂɖɗɕɐȀɑȋɑɑȋȄɕȀȀȃɖɖɖɖɗȂȀɑȋɐɑɑȄɑɑȃɐȅȄȀɖɑɒȆȆȅȄȇɒȀȅɗȊȅȊȆȋȀȆɗȀȅȆȄɒɒɐɐȆȇɐȊɒȀȊȁȀɕȃɕɒȄɑȂȇɐɑȀȅɐȊȁȇȆɐȀȀȀȊȀȂɖɐɕȇȊȇɖȊȁȃȃȆȀȋɕȅɐɐɗȇȇȀɐȊȋȂȅȀȀɕɑȄɒȄȄȃɕɑȂȁȅȃɗȊɕɐɕȇɑȊȀɐɖȇȆȅɒȂɖɐɗɐȆȇȀȊȆɖɑɗɐȄɐȅȋɐȆȄȊɕȅȋɑȇɑȊɗȁȆȇȄȁɐȇȊȀȇȋɕȂȃȊȋɕȀɑȁɐɒȀɗȁɗȂȁɗȁɒȄȄȀȀɖɖȄȀȊɐɕȅȁȇɖɗȊɑȂɖȊɒȃȁȅȂȀȋɐɑȁȁɒȊɗȂȂɕȇɐɗȁȆȄɑȁȃȅȀɕȂȁɐȁȂȅɖɑɖȂȆȊȂȅȇȆȃȆȋȄȄȅȋȊɗȀɕȁɕȋɐȇȊȃȇȇȂɒȄȇɖȆȊȊɐɒɑɖȂȆȆȆȀȋɐȅɐȄɐɕȋȁɒȋɒɖȂȅɗȅȆȁȃɗȂȇȆȁȆȁȆȁȄȅȁȄɗɒȀɖȊȅȁȊȅȀȆȀɐȀȄɑȃȊȋɖȂɒȊȋȂɐȆȃɐɐɕȃɐȁɐȅȅȄȋȅȁɖȃȅȋȇȅɗȆȇȇȃɗȋɗɒȋɒȆȂɒȂɒȆȂȋȀȀȆȀȇɒȁȄȅɒɑɕɑȁȄȆȆɑɑȀȆȀȇɒȁȄȅȅɑȅȋȇȇɖɗɗȅɗȃȋȅɑȄɗɑɑɗȁȋɒȆȂɗɖȁɗɗȆȆɐȄɒȇɕɕɗɖɗɗɒȆȆȇȅȅȆɑȄɐȄȃȀɗɒȅɖȁȁȂȅȀȄɒȃȂȀȃȄɐɑɒȅȊɕȅȇɐɒȀȀɑȊȅɑȀȋȄȊɐȁɗȂȄȊȂɗȊȊȆȅɖɐȄɑɒɖȄȋɐȁɗɖȄȇȁȁȆȁɕɗȂȀɗɐȆȊɐɑȅȁȅȆȂɒɗɖɑȅɗȂȄɑȊɗȇȅȄȁɗɑȁȅɒȄȋȋȀȅɖɗȂɒȋɐɐɑȆɖȅȂȂɗȊȅɑɐɗȁȀȀȁɗȋȊɒȀȄɗɐȅȁɑȄȄɒȊȊȅɐȂȅȅȋɗȄȀȇɕȊɐɐɑȇȊɒȊȆɒɗɒȅɑȆɒȇȆɖɒȅȊɗȀȁȆȊɗȆȃɑɗɒɖȂȅɖȅȀɖȆɕȃȂɖɑȅȀȂɐȃȊȆɐȋȃɑȀȁȂɑɑȇȅȀȃȊȄɒɕȃȀȄɑȀȊɐȀȆȄȁȆȁȋɐȄɐȊɑȆɒȃɖɒɕɗȋȋȅȀȆɗɐȆȅɒɕȇȄȁȆɗȁɖɒȀȆȇȋȋȁȆɒȇɒȂȆȀɕɗȁȃɐɐȀɗȄȁɕȇɑȊɖɖɑɑȇɖɐȄȂȀȃɖȊȇɒȇȊɒȊȊɖȄȋȇȁȇȄȊɐȊȅɑȊɒɒɕɑȊɒȅɑɕȊȄɗȁɑȇȊȁɕɐɑȄɕȇȊȊȄȃɑȆȅȃȋȊɑȁɑȅɗȁȂɕɒȇɕɕȆɒɑȃɑɖɒɗȂȁɗȆɑȃɖȀɖɒȂȀɑɐȊȇȇȇȅɒȀɗɑȊȄȄȄȁȊȂȀȀȁɒȁȆɑȇȂȆɐɗɕɗɕȄɖȋɗɖɖɗȆɗȁɒȇȊȊɒȅȅȂȅȋȋȃȂȄɒɒȁɐȆȆȇɒɐȅȅɐȄȅȃȁɕɕɕȅȊȀɐɕɕɖȇɖȆȀɐȂȄȀȊɗȃȇȅȄȁɕȇȇȅȄȄɑȇɖɑȇȀɗȅȇȅȂȊȄȋȁȅȃȊȁɒȊȇȊȁɒȁȂȁȁɖȊȅȆɒȅɐȋȃȇɐȊȂɐȅɒȄȊɕɕɖȇȁɕȀȀɐȆɕȁȋȇȋȅȄȅȊȄɕȀɕɒȂɖȊȅȊȁȂȀȂȂɒȄȁɐȆɗɗȅȋɑȃɖȃȁȅɕɖȊȄȂɕȂȇȊȋɕȀɕȃȇɒɑȁȂɐɑɕɑȂȄɐɑȋȆɗȊȂȄɒȁȀȁɗȆȀɗȃȊɐɐɗȊȀȅȁɐɒɒɗȊɑɕȄȊȀɐȄɐɒȋɕɑɒȅȁȁȊȁȊɗɒȂȀɕɒɒɗȁɖɖȀɕɗɒɒȆɒɖȋɗɒȅɐȀȃɗȆɕȁȅȅɐɖȂȋȅȁɕȂȂɒɐȊɒȄɒȄɒȀȃɕɗȊȄɖȃȅȇɑȄȄȃɐȀȇɕȄȅȃɑȇȄȄȆɑȁȊȄȊȁȂȆȋȆɕȃȆɖȇȁȃɗɖȅȆȂȊɗɖɖȋɒȇȄȄɗɑɖɐȀȊȀɑɕȋȅɒȄɒȇɐɒɖȄȊȆɒȇȅɑɐȃȂȆȊȃɒɐȃȆȆȄȇȃɑȁȁȅȆȇɑȁȇɒɑȀȋȁɕȁȋɐȁɗȋɕɕȃȋȇȁɗȋɕɕɒȄɐȃȊɑɑȋɐɖȆȂȂȅɐɐȊȆȊɗɖȀɕȄȁȊȂȊȃȋȊȅȂȅȂȆȇȇɒȆȋȂȋȊȆȃɐȂȅȇȅɒȆȋȂȋȆȊȂȃɒȀȃɕɐȃɖȂɗȃȄȀȅɕɐȀȅȂɗȃȄȀȅɕɐȆɖȊɗȂɒȇȅɑȇȃȇȄȃȅȃȆȇɕɗȋɐȄȇɕɒȁȄɑɒɐɒɖȀɐȃɒȋɕɒȊȊȋȆȆȂɕȆȀȀȃɑɒȀɖɒȅȄȂȅȇȅɗȆɐɕȃɖȀɖȇȄȄɐȀɖɗȄȋɑȅȃɑɒȁȊɐȅȇȂȆȁɕȆȀȊȃȄȇȊȀȄɗȂȅȇȁȆȇɕȊȄȁɒȅȄɕȊȃɑȂȂɕȁȋɑɖȇȃɕȋɐȅȃȋȀɑȇɒȅɗɗɖȆȅɒȅɖȂɖȅɖȆȃȆȊȄɗȂȀȀȄȃȂɗȁɖɐȆȂȇɑɐȁɐȆȄȅȋɗɒȀȂȁɕȊȁȄȊɕȊȂȆȆɐɗɑȃȁȋɖɑȇȆɑȃȁȀɐɒɒȇȆȇȋɒȅȋȅɕȅɗȀȀɖȂɗȋɐȋɖɗȄɑɗȄȄȅȋȆɗȊȁȄȀȊȃȅȆȄɖȂȇɖɑȁȊȋȁɕȊȇȇɐȄȋɖɖȀȊȁȄȄɕɒɐɐɖȊȄɒȄɕȆȅȀȂȊɒɕɒɑȅɕɒɑɗȂȅɑɗɑɕȀɒɑȄȋȆȋȊȇɗȂȄȇɑȂɗɖɖɗȄȄȀȂɐȄȄɑȀɑȁȀȆȄȃȊɕɑȆȅɗȋɖɖȃȁɗɑɗɒɕɐȄȋɕȆȀɐȇɑȆɑɗȋȁɗȇɕȇȇȊȆɒɖȁɒȃɒȂɕɒȅȀȋȀɖɖȋȂɕȅɐȄɑɕȇȆȅɕȃɖȂɖɖɖȃɐɗȇɒȅȁȁɑɕȁɒȋȅȄȁȇȁɐɕȀȄȋȄȄɖȇȅȅȊȆɑɐȂȆȄȊɗȁȀȀȂȁȊȅɕȊɒȂȅȄɒȇɕȆɖȊȆȅȅȇȊȄȂɕȀɖɑȀɕɐɑȂɑȆȁȀȊɐȄȇɕȆȊɕȄȆȋɖɖȄɖȊȄɐȁȄȆɗɑɗȅȋȂɗɗɐȆɒȅɐȆȄȇȄȆɒȇȄɑȅȄȆɐȂȊȀɒɖȆɖɑȇȅȆȊȆɖȋȀɐȋɖɐɗɗȆȃȁɒȋȇɖȀɕɐɕɕȋɖȀɕɑȊȊɐȄȂɕȋɕȄȂȊȂȊɕȋȁɑȂȊȀȊɕɗȁɗɑȆȄȄɖȇȇȊȄɐȂɑɖɕȀȆɕɐȁɐɐɖɐȊȋȇȂɗȀȊȅɑȄɑɖȄɑȃȁȋɐɕɑȄȅȂȂɗɗȅɑɖȇɕɐɑȀȆȁɕȆɑɖɕɗɗȅȃȆɒȄɕɖȃɕȄȆɗɗɖȋȋȆȆȀȆȅɕȃɒȋȊȆȄȀɗȃɕɕɐȁɗȆɗȅȁȋɖȀȅɕɐȄɗɖɐȀȋɗȂɕɗȂȄɑɗɐɕȂȁȀȄɒȃɕȇȃȄɖȇȇɒɕȊȂɐȋȂɑȋɖȂɒȊȁɕɐȊȇɗɖȅȀȊȀȂɕɗȂȄɑȊȃɕȁȁȀɗȃɒȀȂȆȊɐȂȂȄȃɒȀȂȆȋɐɐȄȋɗȆȅȀȃȀɖȅȇɑȇȋȁȊȇȊȃɗȂȅɒɐȃȁɒɐȃȋɕɖȋɑɗȂɐɕȃȁȀɗȃȇȅȋȆȃȋɑȇȆȂȃȄɒɐȂȇɕɐȃȋȊȇȆȂȇȂȄȋȊȃȆȂȁȂȃȆȅɗȆȇȋȋȇȃȂɑȂȆȁȁɗȃȇȅȋȆȃɑȀȃȊɐȆȂȅȂȀɐɐɖɒȋȀȃȀɖɐȇɒȋȊȃȂȁȅȁȆȇȇȋȇȂȂɑȂȆȁȁɗȃȇȅȋȆȃȋɑȇȆȂȁȂȃȁȅɗȆȇȋȋȇȃȂɑȀȆȄȃȅɗɖɕȃɗȃɕȀȁȁɒɒȇɒȃȋɗȃɒȂȂȅȋɒȀȇȁȃȇɗɒɒȋȄȅɑɗȀȋɐȃɒȋȀȃȂɖȅȄȆȇȂȋȂɕȅȁȆȇȇȋȃȊȀȂȁɒɒȇɒȃȋɗȃɒȂȂȅȋɒȀȇȁȃȇɗɒɒȋȂȃȋȂȀȅȁɒȇȇɒȃȋɗȃɒȂȂȁȋɒȀȋȁɕȃȁȃɒȀȇȁȃɒɗɒɒȋȂȃȋȂȀȅȁɒȇȇɒȃȋɗȆɒȀɕȅɒȂȋȅɖȆȇȂȋȋɕȀȀȁɒȋɐȃɕȀȂȁɒɒȇȋȇȂȋȂȆȆȁɗȃȇȅȋȆȃȋɑȇȆȂȁȂȃȁȅɗȆȇȋȋȇȃȂɑȂȆȁȁɗȃȇȅȋȆȃȋȊȇȆȂȇȂȄȋȊȃȆȂȁȂȃȆȅɗȆȇȋȋȇȃȂɑȂȆȁȁɗȃȇȅɑȆȂȄȃɑȃȄȂȋȂȆɐȅɖȀȋɐȃɒɖȀȇȀȋɐȃɒȁȊȁȂȇȅȋȆȂȇɑȇȆȂȁȂȃȁȅɗȆȇȋȋȇȃȂɑȂȆȁȁɗȃȇȅȋȆȃȋɑȇȆȂȁȂȃȁȅȆȆȇȂȃȂɖȅȇȆȇȇȋȇȂȂɑȂȆȁȁɗȃȇȅȋȆȋȋɒɖɕɖɗȊȆɐɒȁɕȇɗɗȅȅȀɕɐȂɖɕȄɒȄɒɖɕɗȋɖɕȄɕɖȊɒɒɒȊɗȇȄȄɕȄȆȂȅɖȂȄȄȆɗȃȂɕɑȆɒɒȊȆȊɕɗȆɕɕȆȊȋȇȃɑɒȆȂɖɒȀɗȅȃȄȃɕȃɕȅɐɑɖɗȂȃɕȁȁȅȅȆȁȁȋɑɑȇȆɖɗɑȊɒɐɖɖȄȁɖɗȁɗȂȂɒȋȃɑȊɕȄɕȆɐȄȅȀɕɖȂɖȀɗȁȃȄȄɖɖȊȆȁɕȀȁɐȋȇɑɗȅȅȃɒɖȃȋȄȄɗȁȀɐȂȊɖɐɒȅȂȆȄȊȄȄȄȁȀȇȂȊȁȄȄɗȋɗȆɗȀɗɗȇȋɑȃɖɒȀɐɖɐȂɒȄɗɗɗȇȋȀȃȃɗȂɖȄȅȃɗɑɒɗȅȊȄɒɑȊɑȆȁɕȇȄȇȃȇȋȁɑɑȋȅȂȊȁȄȄȋɖȁȃȊɖɕȂɒɒɗȊɗȄȃɗȋɐȇȆɗȅȀɑȇȂȀȃȋȆɑɑȋȅɑȅȇȄȅȃȁȅȂȃȀȄȄȋɗɐȄȇɖɖȃȆȂȅȇȃȅɖȄɗȄɗȂȇȄȀɗɗɑɖȊȄȋȄɗȄɕȁȊȁȃȄȇȄȆȇȄȋȄȄȃɖȁȁȄȄȇȄȆȇɑɒȋɗȆȅɒȀȋȋȅɐȅɖȋȁɑȊɒȊɕɗȃȆȄȀɗȀɕɒȂɒɕȋɐȄɖȃȁȇɒȇɕȁɕȃȅȁɕɒɐȂɕȋȆȆȅɗȋȋɕȃɒȊȀȂɒɗɒȃɐȁɑȄȆɑȋȆȂɕɗȃȇɒɐɗȇȊȃȂȃȁȇȀȆɐȃȋȇȇɑȃɗȆȂɐȂȆȁȇȀȆȇȊȋɗȇȄȃȅȃɐȇȇɒȃɗȃȊȆȋɒȊɐȀȃȄȅȄȀɕȁȂȇȋȅɒȋȃȃȊȊȄȂɒɒȁȋȁɒȆȋȅɒȋȀȃɒȊɖȂȆȇȋȅȊȆȂɒȂȁɑȃȆȁȇȀȃȁȆȅɖɒȋȂȂȀɑȁȂȄȂȀȁɖȀȆȇȇȃȆȇɑȃɗȆȂȅȂȆȁɐȀɐȆȂɗȆȅȅɒȇȋɐȃȇɒȃɗȃȊȆȋɒȊȁȂȁȂȇȋȅɒȋȃȃȊȊȄȂɒɒȁȋȁɒȆȋȅɒȋȀȃɒȊȇȂȊȅȋɐȊȅȂɒȂȁɑȃȆȁȇȀȃȁȆȅȅɒȇȋȃȋȊȁȂɒȅȃɐȁɒȆȋȅɒȋȅȃɒȊȁȂɒɒȇɑȅɒɑɑȋɑɑȁȁȆȀȆȇɒȅȂȁȄȂɐɑȄȃȋȄȀȃȁȄȂȂȀɑȁȂȀȋȋȂɑȊɐȊɗɐȃȋȃȅɐɐȊȋȊȃɖɐɐȊȅȂɐȇȁȅȃɑȅȃȇɑȆȆɒȅȊȋɖɐɑȊȅȆɐɗȂɕɐȋȇɑɖɖɒɕȊȃȊȄɗȅȆɕȇȂȀȆȃȄɒȄɒȀȂȄȋȅȂɕɗȁȋɑȇɐȁȄɖȆȇȊȋɗȇɑȋȅɐɒȊȇɗɖɒȄȃɒȀɕɒȃȊȆȋɒȊȄȂɗȊȊȁȆȄȅɒȆɐɑȅɗȇȁȊȀȆȁɖȆɑɖɒȊȇȂɒȊȄȁɗɕȊɒȆɐȅȅȆȇɑȅɗȆȁɖȀɑȁɒȆȀȅɒȊɐȀȃȄȅȄȀɕȁȂȇȋȅɒȆɐɑȅɗȇȁȊȀȆȁɖȆɑɖɒȊȇȂɒȊȄȁɗɕȊɒȆɐȅȅȆȇɑȅɗȆȁɖȀɑȁɒȆȀȅɒȊȄȂɗȊȆȁȊɑɗȇȃȀȁȄȅȇȁɕȁȅȆɐȅɒȆɐɑȅɗȇȁȊȀȆȁɖȆɑɕȁȇɑȋɗɐɑȊȅɗɒɒȇɐȅȅȆȇɑȅɗȆȁɖȀɑȁɒȆȀȅɒȊȄȂɗȊȊȁȆȄȅɒȆɐɑȅɗȇȁȊȀȆȁɖȆɑɖɒȊȇȂɒȊȄȁɗɕȊɒȆɐȅȅȆȇɑȅɗȆȁɖȀɑȁɒȆȀȅɒȊȄȂɗȊȆȁȊɑɗȇɑȋȅɐɐȊȁɑȀȆȁɖȆɑɖɒȊȇȂɒȊȄȁɗȄȆȇɒɖɗɐȊȊȅɐȅȇɕȆɑȀɕɐȃȅȇɗȋɕȅɕȄɐɗɕȇȋȄɐɑȊȄȁȆȀȄɗɕɐȂɖɗȀɐȀȃȊȀɗȇɗɕȇȂɗɒȆɐȃȇɑȇȂɕɑɐȇȊɗȅȀɕȊȇȅȇȋȁȇɗȇɗɒȁɖȅȁȄɒȊȊɒɑȄȅɗȋȆȊɑȃɑȋȅȄȆȋȊȀȅȂȃȂȅȂȆȁɕȄȇȆȊȄȂɕȀɖɗȇȊȊɖɒȁȊɒȅɕȇȂȆɗȀɕɐȅȅȀɑɕȃȀɕȆȄȆɐȂȊɖɒɕȇɒɑȆȂȆɗȊȀȇɐȂɖɒɗȀȇɗȊȀȅɖȁɖȋȆɗȅȊɕɗɑɑɒɖɐɗȊȆȊɖɕɗȁȀȇȄȊȇȄȊɗɒɗȁȇȊɗȅɗȆȇɒɑɖȅɒɑɖȃɐȄɒȅȂɑɖɖɒɒɒȂɒɖɐɕȇɐɗȅȀɕɗɒɒȆɕɕɑȊɐȊȂȁȃɗȄȋȅɒȄɖɑȃɒɒɒɖȅȊɕȁɐɐȅɒȊȇȀɖȄɖɐȊɒȆɑɐȅȆɕȆɒȄɗȆɗȁɕɕȆȂɐȊɖȄȅȆȄɗȄȇɑȁȅȄȂɕȊɒȄɕȄȆȄɐȆȅȄɕɕɕȊɑȀȄȀɖɑȄȃȀȋȆȂȄȀȃɗɖɒɖȇɐɕɗɑȁɕȊɖȂȀȃȇɕȄɑɗȄɗɕȃȋɗɕȆɐɐȂɕȅȄȅȇȊɖȀȋȅȊȅɖȅɑȅɑȄȆȀȃɐȅɗɖȊȇɗɗɗȆȅɕɕȂȆȊɕɕɖȃȄȃȃȃȃɕɕɕɕȃȀȃȃȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɗɕɒȇɗȁȅɐȆɒȃȂȃȃȃȃȁȃȃȆȃȃȃȃȂȀȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȆɑȇȀȅɕȅɖȄȇȅȆȅɖȄȇȆɕȆȇȄȊȄȃȅȆȄȀȆɗȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȂɖȊȂȂɒɑȄɖɕȃȃȃȃȃȃȇɖȃȁȃȃȃȃȃɑȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȊȀȃȀȃȃȃȃȆɕȄȁȅȆȅɐȄȀȁɕȁɖȄȁȅȆȅɐȄȀȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɗȅȅȇɑȀȆȂɕȇȃȃȃȃȃȃȀȂȃȀȃȃȃȃȂɐȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɑȀȃȅȃȃȃȃȄȄȅɕȄȁȅȇȁɕȆɕȄȁȅȆȅɐȄȀȁɕȅȇȅɕȅȀȄȆȅɗȅȆȅɖȄȇȁɖȄȋȅɗȅɐȁɖȄȁȅȆȅɐȄȀȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȀȊȆɑɑɒɑȄȆȊȃȀȃȃȃȃɑȄȁȁȃȃȃȃȂȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɖȊȃȋȃȃȃȃȄȄȅɕȄȁȅȇȁɕȅȇȅɕȅȀȄȆȅɗȅȆȅɖȄȇȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȃȄɑȄȇȃɒɒȁȇȃȅȃȃȃȃȋɕȂɒȃȃȃȃȂȆȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȄȂȃɐȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȇȅȋȅȆȅɗȅȆȁɕȄȇȅȋȅȆȅɗȅȆȀȂȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȁȂȊȄȁȆȋɒɗȅȃȀȃȃȃȃȇɖȃɒȃȃȃȃȂȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɐȋȂȁȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȀȅȆȄȇȄȇȅȊȅɖȅȄȄȀȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȃȆȂɕɐȀȀɖɕɐȃȂȃȃȃȃȇɗȃȄȃȃȃȃȂȁȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɐɗȂȅȃȃȃȃȄȄȅɕȄȁȅȇȁɕȅȅȅɕȅɖȄȇȆȇȅȂȅȁȅɐȅȆȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊȀȄȅɗȅȇȊȂȋȃȂȃȃȃȃȇȃȃȁȃȃȃȃȂȇȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɕȊȂȋȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȄȅȆȅȁȆȀȅȆȄȇȄȇȅȊȅɖȅȄȄȀȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊȁȄȇɑɑȆȀȄȄȃȂȃȃȃȃɐɕȃȁȃȃȃȃȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȇȀȂɒȃȃȃȃȅȇȅɕȅȀȆȃȄȁȅɕȄȃȄȀȁɕȅȂȄȃȄȃȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃɕȂȁȂȊɕȁɐȄȄȃȂȃȃȃȃɕɕȃȁȃȃȃȃȂȂȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃɕȃȂɐȃȃȃȃȅȇȅɕȅȀȆȃȄȁȅɕȄȃȄȀȁɕȅȀȅɕȄȁȅȆȁɖȄȋȅɗȅɐȆȃȇɑȃȂȃȁȁɗȃȃȂȇȃȃȃȅȃȃȃȋȃȃȃȃȃȃȁȂȃȃȊɕɖȅȊȇȂȁȁɒȃɑȃȃȃȃȆȀȄȃȃȃȃȃȃɕȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȃȊɖȂɕȃȃȃȃȄȄȅɕȄȁȅȇȁɕȄȀȄȇȄȊȅɐȅȆȄȀȁɖȄȋȅɗȅɐȆȃȇɑȃȆȃȅȃȃȃȃȃȃȃȃȃɑȃȃȃɑȃȃɐȂȃȁȃȃȃȃɕȆȁɒȃȃȃȃȃȃȃȃ

You can see that they read content from flag file and convert it into hex. After that, it convert each character to the number representing the unicode code of a specified character :)))) and xor it with an random integer in range(0,1024)

Finally, they convert it back to character and create output.

To solve it, i use brute-force and find out the random number. It's 563

import codecs
filename = "vaulter-output.enc.txt"
byte_data = []
num = 563
print("Trying " + str(num) + ":\n")
decode = ""
f = open(filename, 'r')
res = []
while 1:
    # read by character
    char = f.read(1)        
    if not char:
        break
    res.append(chr(ord(char) ^ num))
hexstring = "".join(i for i in res)

#if decode.find("{") > 0:
print(hexstring)
f.close()

after got hexstring, i convert it to binary file and using file command to check it, and i found it is Microsoft Word 2007 file :))) Yeh, using Microsoft Office to open it and see the flag

Flag: KCTF{w3lc0m3_70_3ncryp710n_w0rLD}

I Love Pi (221 solves)

Challenge

Isaac Newton left me this piece of code and a message. Can you help me decode this...

Demo Flag : KCTF{FL4G_H3R3}
i_love.py python import base64 lengths = [--REDACTED--] flag = "KCTF{*******************************}" # len(lengths) = 10 # len(flag) = 39 s = 0 encoded_flag = "" for l in lengths: seg = flag[s:s+l] for _ in range(len(seg)): seg = base64.b64encode(seg.encode('ascii')).decode('ascii') s+=l encoded_flag += seg print(encoded_flag)
encoded_flag.txt VXpCT1ZRPT0=Rg==V2xod1UxcHNWa0pRVkRBOQ==MQ==VmpCb2QxVXhjSE5UYTFaV1ZrUkJPUT09Vm0wd2QyVkhVWGhUV0doaFUwVndVRlp0TVZOV01XeFZVbTVrVlUxV2NIbFdNalZyVmpKS1NHVkliRmRpVkVaSVZtMTRTMk15VGtWUmJIQk9VakF4TkZkWGRHRmtNRFZ5VFZWV2FHVnFRVGs9U0RNPQ==Vm1wQ1UxRXlTbkpOVldSVFYwZFNjVlJVU1RSUFVUMDk=VjFSS2QxWXhjSEpPVldSYVpXcEJPUT09VGtac09RPT0=

It seem we have to guess the length of encoded string

I try to split it by "==" or "=" and decode it until it contain "==" or "=". If it contain "==" or "=" I split again and decode them ultil i cant decode all of them.

import base64

ct = "------cipher_text------"

# function: split if it contain "==" and "=" 
def splitct(ct):
  result = []
  ct = ct.split("==")
  ct = [x.split("=") for x in ct]
  ctt = []

  for _ in ct:
    for __ in _:
      if __ == "":
        _.remove(__)
    ctt.append(_)

  for _ in ctt:
    for __ in _:
      if __ != _[-1]:
        __ += "="
      else:
        __ += "=="
      result.append(__)

  return result
# print(split(ct))


def decodec(ct):
  if ct.find("=") > 0 and ct.find("=") < len(ct) - 2:
    ct = splitct(ct)
    for c in ct:
      try:
        c = base64.b64decode(c)
        decodec(c.decode())
      except:
        print(c.decode(),end="")
  else:
    try:
      ct = base64.b64decode(ct)
      decodec(ct.decode())
    except:
      print(ct.decode(),end="")
decodec(ct)

Flag: KCTF{4_P1_4_D4Y_K33P5_7H3_H4CK3r5_4W4Y}

Jamal (142 solves)

Challenge

My friend Jamal has encrypted the flag and sent me the files. He now wants me to decrypt it and find out. Can you do it for me, please?

Demo Flag: KCTF{f4k3_fl4g}
jamal-encrypt.py python from random import randint, seed def is_prime(n): if n == 2 or n == 3: return True if n % 2 == 0 or n < 2: return False for i in range(3, int(n**0.5)+1, 2): if n % i == 0: return False return True def get_prime(n): while True: p = randint(2**(n-1), 2**n) if is_prime(p): return p def encrypt(ch, g, p, y, k): pt_int = int.from_bytes(ch.encode(), "big") c1 = pow(g, k, p) c2 = (pt_int * pow(y, k, p)) % p return c1, c2 def main(): flag = open("flag.txt", "r").read().strip() x = randint(2, 9999999) p = get_prime(43) g = get_prime(43) while g == p: g = get_prime(43) if g > p: g, p = p, g y = pow(g, x, p) with open("flag.enc", "w") as out: for ch in list(flag): # encrypt k = randint(2, 9999) c1, c2 = encrypt(ch, g, p, y, k) out.write(f"{c1},{c2}\n") with open("key.pub", "w") as out: out.write(f"p: {p}\n") if __name__ == "__main__": seed(0) main()
jamal-flag.enc.txt 2542674357061,3229421908786 1047095110514,2703124715302 2241080680361,339282920484 2877082899121,213437588357 2962454333590,1146622182354 8667422468,2914668005810 3283797690288,5668747940970 92336276716,2578935770315 280618016374,4820189175032 1209866491592,146344916624 2253881281576,2448560213475 1161992879414,1674301627359 4818900557459,4874289912091 1794902833332,3885572444087 3082175285512,235300300457 1157352410430,3391910550439 1975682514838,4412581570619 940190944451,4668208507929 4892987552563,3969703431560 861276404486,4681646838677 5308919438905,740205209430 4882067017820,5684832423565 832490479211,3882413987731 2768698738377,2559643212287 4799150729489,2715004149410 2400910224808,2411154824523 871309115691,312836731476 32734373338,5274112237786 2427518930772,3618374377486 3075900055786,2047586052701 5395051057487,427396164824 663270611761,2916443609523
jamal-key.pub p: 5690411473163

The key of this challenge is seed() function. You can see some randint() function but it is not important. If you use seed(), every time you run this program, it alway return a same result. jamal-key.pub is a clue for you.

Ok, now i just have to brute-force 128 character until the result of c1,c2 is same as jamal-flag.enc.txt

from random import randint, seed


def is_prime(n):
    if n == 2 or n == 3:
        return True
    if n % 2 == 0 or n < 2:
        return False
    for i in range(3, int(n**0.5)+1, 2):
        if n % i == 0:
            return False
    return True


def get_prime(n):
    while True:
        p = randint(2**(n-1), 2**n)
        if is_prime(p):
            return p


def encrypt(ch, g, p, y, k):
    pt_int = int.from_bytes(ch.encode(), "big")
    c1 = pow(g, k, p)
    c2 = (pt_int * pow(y, k, p)) % p

    return c1, c2


def main():

    x = randint(2, 9999999) 
    p = get_prime(43)
    g = get_prime(43)

    while g == p:
        g = get_prime(43)

    if g > p:
        g, p = p, g

    #g < p 

    y = pow(g, x, p)


    with open("jamal-flag.enc.txt", "r") as out:
          for _ in out.readlines():
            k = randint(2, 9999)
            for __ in range(128):
              c1, c2 = encrypt(chr(__), g, p, y, k)
              if c1 == int(_.split(",")[0]) and c2 == int(_.split(",")[1]):
                print(chr(__), end="")
                break


if __name__ == "__main__":
    seed(0)
    main()

Flag: KCTF{h4v3_y0u_h34rd_0f_3l64m4l?}

Encode Mania (186 solves)

Challenge

Encoding random stuffs is so cool! I just want to encode it over and over and over again ...

Demo Flag: KCTF{fl4g_h3r3}
encode_mania.py python import base64 from random import randint flag = "kctf{************}" def encrypt(s, option): if option == 0: ret = base64.b64encode(s) elif option == 1: ret = base64.b32encode(s) elif option == 2: ret = base64.b16encode(s) else: ret = base64.b85encode(s) return ret encrypted_flag = flag.encode('utf-8') for _ in range(12): option = randint(0, 3) encrypted_flag = encrypt(encrypted_flag, option) with open("encode_mania.txt", 'w') as f: f.write(encrypted_flag.decode())
encode_mania.txt GUZDGMRUIQ3TENJYGMYTOMBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRXIEZTSNRRGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG4ZTERRVHE3EENRUGZATKOBTGM3TQNRZGUZDGMRUIUZTMNCCGMYTMOBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRTGEZTSNRRGUZDGMRUIU3DONCEGQ3DOMBUHA2TSNZZG42DMNRVG42TKNRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJQGMYTOMBUHA2TSMZRGM4TGOBVHEZTANRUGZATMNJWHE3TINJZGUZDGMRUIU3DMNRWGQ3TKNRUHA2TSNZZG4ZTERRVIE2DKNRUGZATKOBTGM3TQNSCGUZDGMRUIUZTMNCCGMYTOMBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRXIEZTSNJZGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSMZRGM4TGOBVHE2TKNRUGZATIQRXIEZTSNRRGUZDGMRUIQ3TENJYGMYTMQZUHA2TSNZZG42DMNRVG42TKNRUGZATIQRTGEZTSNRZGUZDGMRUIQ3TENJQGMZDKNRUHA2TSMZRGM4TGOBVHEZTANRUGZATKOBTGM3TQNSBGUZDGMRUIU3DMNRWGQ3DOMBUHA2TSNZZG42DMNRVHE2TKNRUGZATIQRTGEZTSNRRGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG4ZTERRVG43EENRUGZATKOBTGM3TQNSDGUZDGMRUIU3DMNRWGQ3DMQZUHA2TSMZRGM4TGOBVHE2TKNRUGZATKOBTGM3TQNRYGUZDGMRUIU3DMNRWGQ3TMNBUHA2TSNZZG42DMNRVHEZTANRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJYGMZDIRJUHA2TSNZZG4ZTERRVHEZTANRUGZATIQRXIEZTSNRRGUZDGMRUIU3DMNRWGQ3TIRJUHA2TSMZTGZDDOMRVG42DKNRUGZATKOBTGM3TQNSDGUZDGMRUIQ3TENJQGMZDKMRUHA2TSMZRGM4TGOBVG43EENRUGZATKOBTGM3TQNSDGUZDGMRUIQ3TENJQGMZDIRJUHA2TSNZZG4ZTERRVG42DKNRUGZATMNJWHE3TINKBGUZDGMRUIQ3TENJQGMYTOMBUHA2TSNZZG4ZTERRVIE2DKNRUGZATIQRTGEZTSNSBGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG42DMNRVHEZTANRUGZATIQRXIEZTSNSCGUZDGMRUIU3DMNRWGQ3TINRUHA2TSMZTGZDDOMRVG42DKNRUGZATIQRXIEZTSNRYGUZDGMRUIU3DMNRWGQ3DMOBUHA2TSNZZG42DMNRVG43EENRUGZATKOBTGM3TQNSCGUZDGMRUIQ3TENJQGMYTOMBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRXIEZTSNRZGUZDGMRUIU3DMNRWGQ3DOMBUHA2TSMZRGM4TGOBVHE2TKNRUGZATKOBTGM3TQNRZGUZDGMRUIQ3TENJQGMZDKMRUHA2TSNZZG4ZTERRVHEZTANRUGZATIQRTGEZTSNKBGUZDGMRUIQ3TENJQGMZDIRJUHA2TSNZZG4ZTERRVG43EENRUGZATKOBTGM3TQNSBGUZDGMRUIU3DMNRWGQ3TINRUHA2TSMZRGM4TGOBVHEZTANRUGZATIQRXIEZTSNSCGUZDGMRUIQ3TENJQGMZDIRJUHA2TSNZZG42DMNRVHEZTANRUGZATIQRXIEZTSNRZGUZDGMRUIU3DMNRWGQ3TKNRUHA2TSMZRGM4TGOBVIE2DKNRUGZATKOBTGM3TQNRYGUZDGMRUIQ3TENJQGMYTOMBUHA2TSNZZG42DMNRVG42TKNRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJYGMYTMQZUHA2TSMZRGM4TGOBVIE2DKNRUGZATKOBTGM3TQNKBGUZDGMRUIU3DMNRWGQ3TIQJUHA2TSMZRGM4TGOBVG43EENRUGZATKOBTGM3TQNSCGUZDGMRUIQ3TENJYGMYTOMBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRXIEZTSNRYGUZDGMRUIU3DMNRWGQ3TKNRUHA2TSNZZG4ZTERRVIE3EENRUGZATKOBTGM3TQNRYGUZDGMRUIQ3TENJQGMYTOMBUHA2TSMZRGM4TGOBVHE3EENRUGZATIQRXIEZTSNSEGUZDGMRUIU3DONCEGQ3DOMBUHA2TSNZZG4ZTERRVHE2TKNRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJQGMYTOMBUHA2TSMZRGM4TGOBVHEZTANRUGZATKOBTGM3TQNRYGUZDGMRUIU3DMNRWGQ3TIRJUHA2TSNZZG4ZTERRVIE2DKNRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJYGMZDINRUHA2TSMZRGM4TGOBVIE2TKNRUGZATIQRXIEZTSNRRGUZDGMRUIQ3TENJYGMZDIQJUHA2TSNZZG42DMNRVG43EENRUGZATIQRXIEZTSNSCGUZDGMRUIQ3TENJQGMZDKQJUHA2TSMZTGZDDOMRVHE2TKNRUGZATIQRXIEZTSNSEGUZDGMRUIQ3TENJQGMZDIRJUHA2TSMZRGM4TGOBVG42TKNRUGZATIQRTGEZTSNSBGUZDGMRUIQ3TENJQGMYTMQZUHA2TSMZRGM4TGOBVHEZTANRUGZATIQRTGEZTSNRRGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG4ZTERRVG43EENRUGZATKOBTGM3TQNSCGUZDGMRUIQ3TENJQGMZDIQJUHA2TSMZRGM4TGOBVG43EENRUGZATKOBTGM3TQNRYGUZDGMRUIU3DMNRWGQ3DMQZUHA2TSNZZG42DMNRVHEZTANRUGZATKOBTGM3TQNRRGUZDGMRUIU3DMNRWGQ3TKNRUHA2TSNZZG4ZTERRVHEZTANRUGZATIQRXIEZTSNRRGUZDGMRUIU3DMNRWGQ3TKNRUHA2TSMZRGM4TGOBVHE2TKNRUGZATKOBTGM3TQNSEGUZDGMRUIQ3TENJYGMZDINRUHA2TSNZZG42DMNRVG42TKNRUGZATIQRXIEZTSNRZGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG42DMNRVG43EENRUGZATIQRTGEZTSNRZGUZDGMRUIQ3TENJYGMYTOMBUHA2TSNZZG4ZTERRVG43EENRUGZATIQRTGEZTSNKBGUZDGMRUIQ3TENJQGMZDIRJUHA2TSNZZG42DMNRVG43EENRUGZATKOBTGM3TQNSDGUZDGMRUIU3DMNRWGQ3TIRJUHA2TSMZTGZDDOMRVG43EENRUGZATMNJWHE3TINKBGUZDGMRUIQ3TENJYGMZDINRUHA2TSNZZG42DMNRVG43EENRUGZATKOBTGM3TQNSCGUZDGMRUIQ3TENJQGMZDINRUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRTGEZTSNRZGUZDGMRUIUZTMNCCGMYTMQZUHA2TSNZZG4ZTERRVG43EENRUGZATKOBTGM3TQNSFGUZDGMRUIQ3TENJYGMZDIRJUHA2TSNZZG42DMNRVHEZTANRUGZATKOBTGM3TQNSBGUZDGMRUIQ3TENJQGMZDIRJUHA2TSNZZG4ZTERRVG42DKNRUGZATKOBTGM3TQNSBGUZDGMRUIQ3TENJQGMYTMQZUHA2TSMZRGM4TGOBVHE3EENRUGZATIQRXIEZTSNSEGUZDGMRUIQ3TENJYGMYTMQZUHA2TSMZRGM4TGOBVHE3EENRUGZATKOBTGM3TQNSDGUZDGMRUIQ3TENJYGMYTOMBUHA2TSNZZG42DMNRVHE3EENRUGZATIQRTGEZTSNRRGUZDGMRUIQ3TENJQGMYTOMBUHA2TSNZZG42DMNRVG42TKNRUGZATIQRTGEZTSNKBGUZDGMRUIQ3TENJYGMZDIQJUHA2TSNZZG4ZTERRVIE2DKNRUGZATMNJWHE3TINJZGUZDGMRUIUZTMNCCGMYTMQZUHA2TSMZTGZDDOMRVG42TKNRUGZATMNJWHE3TINJZGUZDGMRUIQ3TENJYGMYTOMBUHA2TSMZRGM4TGOBVIE2DKNRUGZATIQRXIEZTSNRRGUZDGMRUIU3DMNRWGQ3TKMRUHA2TSNZZG4ZTERRVHE3EENRUGZATKOBTGM3TQNRRGUZDGMRUIU3DMNRWGQ3TINRUHA2TSMZRGM4TGOBVG42DKNRUGZATIQRXIEZTSNSEGUZDGMRUIU3DONCEGQ3DOMBUHA2TSNZZG4ZTERRVG42TKNRUGZATIQRXIEZTSNSBGUZDGMRUIQ3TENJQGMYTMOBUHA2TSMZRGM4TGOBVHEZTANRUGZATIQRXIEZTSNKBGUZDGMRUIU3DMNRWGQ3TIQJUHA2TSNZZG4ZTERRVIE3EENRUGZATIQRTGEZTSNKBGUZDGMRUIUZTMNCCGMYTMOBUHA2TSNZZG4ZTERRVHE3EENRUGZATMNJWHE3TINRRGUZDGMRUIU3DMNRWGQ3DMQZUHA2TSNZZG42DMNRVG42TKNRUGZATMNJWHE3TINRYGUZDGMRUIQ3TENJQGMZDKNRUHA2TSMZRGM4TGOBVHEZTANRUGZATMNJWIE3TQNRYGUZDGMRUIUZTMNJQGQ3TINRUHA2TSMZTGZDDGOBVHE2TKNRUGZATMNJWIE3TQNRYGUZDGMRUIUZTMNJQGQ3TINRUHA2TSMZTGZDDGOBVHE2TCM2EGNCA====

Here, we have 4 method of encode: base 16, base32, base64, base85. I know that: there are some character that can only be used in a special method.

import base64

enc = "------cipher_text------"

chars16 = "0123456789ABCDEF"
chars32 = "GHIJKLMNOPQRSTUVWXYZ"
chars64 = "abcdefghijklmnopqrstuvwxyz+/"
chars85 = "!#$%&()*-;<>?@^_`{|}~"

while enc[0:4] != "KCTF":
    mode = -1

    if mode == -1:
        for c85 in chars85:
            if c85 in enc:
                mode = 85
    if mode == -1:
        for c64 in chars64:
            if c64 in enc:
                mode = 64
                break
    if mode == -1:
        for c32 in chars32:
            if c32 in enc:
                mode = 32
                break
    if mode == -1:
        for c16 in chars16:
            if c16 in enc:
                mode = 16
                break

    if mode == -1:
        print("ERR")
        print(enc)
        exit(-1)

    if mode == 16:
        enc = base64.b16decode(enc)
    if mode == 32:
        enc = base64.b32decode(enc)
    if mode == 64:
        enc = base64.b64decode(enc)
    if mode == 85:
        enc = base64.b85decode(enc)

    enc = enc.decode()

print(enc)

Flag: KCTF{dfs_0r_b4u7e_f04c3}

Nhận xét