BackTo Top

Ads234-468 Header

Advertisement by KangFirm NoteWork
Advertisement by KangFirm NoteWork Advertisement by KangFirm NoteWork

Post Header Featured (Ads468)

Tampilkan postingan dengan label Tools. Tampilkan semua postingan
Tampilkan postingan dengan label Tools. Tampilkan semua postingan

18 Oktober 2019



Downloadable Java Runtime Environment (JRE)

salam dari admin blog
Welcome to KF-84 Al-Ambity Bloggist Ankshana
Java Runtime Environment

Java Runtime Environment (JRE) atau edisi standar dari platform Java adalah salah satu Runtime library yang dikembangkan oleh Oracle Technology Network. Suatu alat yang digunakan untuk mengembangkan, menerapkan atau menggunakan aplikasi Java apapun, baik di desktop maupun server. Merupakan suatu keharusan bagi setiap pengguna browser dan untuk semua pengembang (developers).

Platform ini memiliki teknologi yang canggih; diantaranya kami mengingatkan Anda tentang XML, no-codebase deploying, Java Virtual Machine dan bahasa pemrograman yang mencakup literal binary, string, statement, underscores, kompiler dan masih banyak lagi.

Dengan library yang tersedia dan menyertakan beberapa komponen lain, alat ini akan menjalankan applet browser dan aplikasi standalone yang telah ditulis dalam bahasa Java. Dokumentasinya mencakup semua topik tentang fungsi masing-masing dan setiap fungsi software.

Untuk dapat menggunakan & menjalankan aplikasi berbasis Java ini, sobat harus meng-instal terlebih dahulu runtime Java-nya, alias Java Runtime Environment (JRE) yang satu ini.

Java Runtime Environment
Software Java Runtime Environment (JRE) yang saya bagikan di sini sudah versi offline installer, jadi ga' perlu nunggu lagi buat download-download komponennya. Versi yang saya bagikan ini juga merupakan versi terakhir dari JRE7, yang nantinya akan dikembangkan lagi menjadi JRE8 (lihat release-nya disini).

Silahkan download JRE-nya dari link dibawah, lalu install dan komputer (PC/Laptop) anda siap digunakan untuk menjalankan aplikasi berbasis Java..


[ JRE7 Windows 32bit | JRE7 Windows 64bit]
Link Update:
[ JRE8 Online Installer | JRE8 Offline Installer ]

Read More

18 Maret 2018



Cara Membuat Image Captcha AntiSpam dengan PHP

Kang Firman Bloggist Ankshana
salam dari admin blog
Welcome to KF-84 Al-Ambity Bloggist Ankshana
KangFirm84 Bloggist Ankshana

Hallo Guys!! Good morning selamat pagi untuk kalian yang berada di Wilayah Negara Kesatuan Republik Indonesia dan sekitarnya.. :-D)

Untuk edisi postingan kali ini, saya coba share tutorial cara membuat image captcha AntiSpam sederhana dengan menggunakan bahasa pemrograman PHP. Di dalamnya, sudah saya coba dengan menyertakan fitur session. Hasilnya, lumayan memuaskan laah untuk sementara..

OK guys, langsung saja kita ke pembahasan utama postingan ini.

Sebagai informasi awal, disini saya menggunakan software RapidPHP yang di integrasikan dengan PHP versi 7.19 sebagai bahan pelengkap saat mencoba hasil codding PHP-nya. Jika kalian memiliki tools editor yang lain, silahkan saja. › lagian, siapa juga yang larang.. iya ngga?!?

Pertama-tama, buatlah file baru lalu mulai codding dengan deklarasi variable-nya:

<?php
/** Belajar Pemrograman PHP
 *  Cara Membuat Anti-Spam (Image Captcha) Sederhana
 *
 *  untuk medowload hasil programnya, silahkan kunjungi
 *  http://kangfirm84.blogspot.com/
 */

### BEGIN SETTINGS
$imgType= (isset($_GET['type']) && !empty($_GET['type'])) ? $_GET['type'] : 'default';
$imageH = (isset($_GET['h']) && !empty($_GET['h'])) ? $_GET['h'] : 20; //ukuran tinggi gambar
$imageW = (isset($_GET['w']) && !empty($_GET['w'])) ? $_GET['w'] : 80; //ukuran lebar gambar

//Jenis huruf yang akan di gunakan, pastikan file huruf di upload ke server dalam path yang sama.
//sebagai contoh, saya menggunakan huruf yang saya miliki dengan nama zombnze.ttf
$fntName= (isset($_GET['font']) && !empty($_GET['font'])) ? $_GET['font'] : 'zombnze.ttf';
//ukuran huruf yang di tampilkan
$fntSize= $imageH*0.8;
//berapa banyak karakter yang akan ditampilkan dalam captcha?
$lenCode= 6;
//karakter apa saja yang diijinkan dalam captcha?
$charset= '0123456789abcdefghijklmnopqrstuvwxyz';
### END OF SETTINGS
gimana, sikut anda lumayan panas khan?!? hehehe..

Kode di atas adalah sebagai perwakilan untuk menghindari terjadinya error jika file ini dipanggil/akan digunakan oleh file skrip lain.

Masih sanggup mengetik kode programnya?!? OK, kita lanjutkan ke baris selanjutnya..

### BEGIN PROGRAM
//Memulai sesi program
if (function_exists('session_start')) @session_start();
$code   = '';
for ($i=0; $i<$lenCode; $i++) {
    $code .= substr($charset, mt_rand(0, strlen($charset)-1), 1);
}

$image_     = @ImageCreate($imageW, $imageH);
$groun_color= @ImageColorAllocate($image_, 255, 255, 255);
$noise_color= @ImageColorAllocate($image_, 180, 180, 180);

//tambahkan noise pada gambar
for ($i=0; $i<($imageW*$imageH)/6; $i++) {
    @ImageEllipse($image_, mt_rand(0, $imageW), mt_rand(0, $imageH), 1, 1, $noise_color);
}
//render text
$render_text= @imagecolorallocate($image_, 40, 80, 120);
@imagettftext($image_, $fntSize, 0, 6, 15, $render_text, $fntName, $code)
    or die('Sorry, system can\'t render text or TTF files');
Perhatikan kode di atas, itu adalah persiapan sebelum output program di tampilkan. Periksa ulang dan jangan sampai ketinggalan ya, nanti hasil programnya error lho! wkwkwk..
//output image
header('Control-cache: private, no-cache, must-revalidation');
header('Expires: 0');
switch (strtolower($imgType)) {
  case 'jpeg' ? 'jpg' : function_exists('ImageJPEG'):
    header('Content-type: image/jpeg');
    @imagejpeg($image_) or die('Sorry, ImageJPEG error!');
    break;
  case 'wmf' ? 'gif' : function_exists('ImageGIF'):
    header('Content-type: image/gif');
    @imagegif($image_) or die('Sorry, ImageGIF error!');
    break;
  default:
    header('Content-type: image/png');
    @imagepng($image_) or die('Sorry, ImagePNG error!');
    break;
}
inilah kode pamungkas dari program yang kalian buat, yang nantinya hasil program tersebut akan di tampilkan dalam halaman pengguna (seperti hubungi kami, contact us, pendaftaran member, dll, dsb, dst..)
@imagedestroy($image_);
$_SESSION['AntiSpamImage'] = $code;
exit();
### END PROGRAM
?>
yang barusan adalah kode penutup program.

Horeeeeeeee

Jadi, anda dinyatakan sudah sukses membuat program captcha sederhana dengan menggunakan bahasa pemrograman PHP ini.

Selamat Ya!!

tutorial visual step-by-step-nya, dapat kalian lihat di https://youtu.be/1utPYsu2mg0

Khusus buat yang ga' mau susah-susah ngetik, saya sediakan link downloadnya di bawah.



[ Skripnya Disini ]

Read More

13 Desember 2014



Enkripsi Gambar Dengan Metode Base64 di halaman HTML

Kang Firman Bloggist Ankshana
salam dari admin blog
Welcome to KF-84 Al-Ambity Bloggist Ankshana

Selamat malam semua!!

Sebenarnya sih sambil iseng-iseng saja, saya bikin postingan Tips & Trik Kode untuk mengenkripsi gambar dengan metode base64 di halaman HTML ini. Jadi nantinya bila gambar yang kita enkripsi, tak perlu upload ke server. Cukup dengan menyalin (copy) hasil enkripsinya pada atribut src di elemen <IMG> saat codding halaman web berbasis HTML.

Apa sih HTML itu?

Untuk yang masih newbie ;-) Saya cuma bisa kasih sedikit keterangan bahwa, HTML adalah salah satu bahasa pemrograman untuk membuat website/blog.

Naah, kalo maksud dari kode enkripsi gambarnya itu sendiri apa?
Maksudnya adalah agar alamat/url sumber asli gambar tersebut tidak diketahui orang lain, faham?!?

OK, kita langsung ke pembahasan yaa.. #CheckItOut

Contoh script code HTML-nya adalah sebagai berikut:

<img src="data:image/png;base64,PasteHasilEnkripsiDisini"/> 

Isi nilai string SRC hasil enkripsi ini juga bisa di copy-paste di kolom url pada browser kesayangan kalian, nanti gambarnya akan di tampilkan.
Contoh skrip program-nya untuk yang suka pake javascript adalah:


Pilih gambar untuk di enkripsi:

Source code javasript untuk program di atas :

<!-- Bagian untuk memilih lokasi gambar !-->
Pilih gambar untuk di enkripsi: <input type="file" id="loc" style="" />
<!-- Ini bagian untuk menampilkan hasil enkripsi !-->
<textarea wrap="virtual" rows="5" id="cod" style="width: 230px;"></textarea>
<!-- Ini bagian untuk menampilkan gambar secara otomatis setelah lokasi gambar ditentukan !-->
<img id="img" src="" height="auto" />
<!-- Kalau ini, bagian kode javasript program enkripsi-nya !-->
<script type="text/javascript">
var imgOut  = document.getElementById('img');
var imgCod  = document.getElementById('cod');
function readFile() {
    if (this.files && this.files[0]) {
        var FRid= new FileReader();
        FRid.addEventListener('load', function(e) {
            imgOut.src = e.target.result;
            imgCod.innerHTML = e.target.result;
        });
        FRid.readAsDataURL(this.files[0]);
    }
}
document.getElementById('loc').addEventListener('change', readFile);
</script>

Untuk yang suka pake PHP (tapi ga' mau di PHP-in), contoh skrip program-nya adalah:

<?php
function imageBase64FromURL($location){
    $urlParts   = pathinfo($location);
    $extension  = $urlParts['extension'];
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $location);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    $response   = curl_exec($ch);
    curl_close($ch);

    $base64 = 'data:image/'.$extension.';base64,'.base64_encode($response);
    return $base64;
}
?>
Untuk penggunaan/kode pemanggilnya, adalah sebagai berikut:
<?php
$urlImages  = 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtZAo_ZycboPpQ1V_Juk_Fudnz4v6XPMTHM5RTTLhTVLhOPEY825FBELoHyDetUgcc1v9EcT4TRue1dDnmPqyZ0qQKI9Zfmt4TjnQPJT19lATWV7rZ_D8K4w6yigS201gwfNHn65maIGo/s1600/Screenshot-3.png';
$encodeImg  = imageBase64FromURL($urlImages);
echo $encodeImg;
?>
Silahkan ganti string pada variabel $urlImages dengan alamat gambar yang akan di enkripsi.

Hmm.. bagi yang masih kurang mengerti, silahkan tanyakan melalui kolom komentar. Terima kasih sebelum dan sesudahnya. Untuk selebihnya silahkan anda kreasikan sendiri sesuai selera, OK?!?

Selamat Mencoba!!

salam dari admin blog

Read More

27 Februari 2012



Untuk Anda | Widgets Blog | Membuat Floating Social Media Bar

KangFirm84 Blogspot Com
Untuk Anda, Widgets Blog
salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

Sudah tidak diragukan lagi, bahwa selama bertahun-tahun jejaring sosial telah terbukti menjadi sumber yang paling utama dalam meningkatkan traffic banyak situs. Namun demikian, bukan berarti bahwa sebuah sebuah website/blog memiliki kharisma (spark) yang sama untuk mendapatkan semua itu. Cara ideal untuk mendapatkan beberapa keterangan yang

Apa itu Social Media Bar?

Dimana Social Media Bar Akan Muncul?

Cara Tambah Social Media Bar Widget di Blogger?

Dari Editor

Credits


salam dari admin blog

Read More

26 Januari 2012



Untuk Anda | Widgets Blog — All-in-One Sosial Media Sharing dan form Subscribe Yang Mengagumkan

KangFirm84 Bloggist Ankshana
Untuk Anda, Widgets Blog
salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

ASMS and Subscribe Form adalah singkatan dari All-in-One Sosial Media Sharing dan form Subscribe sebuah widget untuk Blogger yang cukup mengagumkan

Sekarang saya sangat senang :) karena setelah ± 5 (lima) jam lamanya mengerjakan kustomisasi pada blog saya, akhirnya saya mendapatkan widget yang saya inginkan. Dimana sebelumnya saya mendapat banyak masalah dalam meng-costumize gadget, tapi kini saya berhasil memecahkannya.

Inilah kreasi widget bernama ASMS and Subscribe Form yang didalamnya berisi tombol Facebook Liker, Rekomendasi Google+, Follow Twitter dan form berlangganan (subscribe) melalui email. Saya juga telah menambahkan tombol berbagi AddThis di bagian bawahnya. Sekarang widget ini dapat digunakan dalam setiap blog (blogspot), hanya dengan mengikuti langkah² instalasi widget yang sangat mudah. Widget ini juga telah di konversi ke dalam blogger oleh Kang MPIM theA di Kang MPIM on Blogger dan ia juga berhasil memecahkan masalah dari browser IE.

Beberapa Fitur Utama dari widget ini

  • Semua dalam satu widget berbagi dan berlangganan Sosial.     
  • Membutuhkan yaitu ruang yang sangat rendah Anda dapat menambahkan widget lain di blog Anda.     
  • Dengan tombol berbagi addthis sosial dibawahnya.     
  • Berlangganan dengan bentuk email.     
  • Nice desain benar-benar Mashable gaya.

Apa Yang Baru dalam Widget ini?

  • Berubah Facebook seperti tombol.     
  • Berubah bagian bawah.     
  • Addthis tombol berbagi sosial ditambahkan.

Cara menambahkan Widget ini ke dalam Blogger

  • Buka Dasboard Blogger Anda > Desain > Page Layout.     
  • Kemudian pilih Add A Gadget > HTML / JavaScript.     
  • Paste kode dibawah ini dan simpan.
    kode widget

    Beberapa Perubahan Kecil

    • Sekarang ganti BTSNTS dengan nama pengguna facebook fanpage Anda.     
    • Ganti rahulippar dengan username twitter Anda.     
    • Ganti kedua nama pengguna btsnts dengan feedburner username.

Credit

Jika Anda ingin berbagi widget ini dengan pembaca lain, maka Anda harus memberikan kredit kepada Blog BTSNTS dan Blog MBT dengan melampirkan link kembali ke post.
Anda juga dapat memberikan kredit kepada penulis untuk versi wordpress dari plugin sharing ini. Diharapkan kalian semua memahaminya dan sebelumnya saya ucapkan terima kasih......
salam dari admin blog

Read More

17 Januari 2012



6 (Enam) Alat Auto Submit Bookmarks

KangFirm84 Blogspot Com
Menambahkan Widget Traffic Rank Alexa di Blog Sendiri
salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

Kali ini saya ingin membagikan info (khususnya) bagi Anda yang sedang mencari-cari tools untuk Auto Submit Social Bookmarking, akan saya sajikan 6 (enam) Alat Auto Submit Bookmarks. Berikut adalah penjelasannya :
  1. Imacros
    Auto Submit Bookmarks tools
    adalah tools yang digunakan dengan memanfaatkan add ons Mozilla, dan umumnya rekan-rekan menggunakan tools ini untuk mensubmit ke social bookmark local indonesia seperti : kombes, debuk, bookmarking.bloggerceria, dan lain-lain. Perlu diperhatikan dalam menggunakan tools ini wajib memiliki akun di social bookmark local indonesia dan mendaftar dengan (email, username dan password) yang sama.

    Untuk mendapatkan tools ini (khusus firefox), bisa anda download di https://addons.mozilla.org/en-US/firefox/addon/imacros-for-firefox/.

  2. IMAutomator
    Auto Submit Bookmarks tools
    merupakan tools submitter ke social bookmarks yang dapat anda akeses di http://www.imautomator.com/, menyediakan member gratis atau free member yang dapat mensubmit ke 15 situs social bookmark dengan jumlah submit 10 link perharinya, dengan indikator beberapa pilihan waktu mensubmitnya. Jika anda berminat silahkan mengunjungi url tersebut diatas dan mendaftar sebagai member.

  3. OnlyWire
    Auto Submit Bookmarks tools
    memberikan fasilitas member gratis dan fasilitas submit sampai dengan 300 submiter dalam satu waktu. Jumlah situs social media atau social bookmark yang dapat di submit melalui tools onlywire sejumlah 51 situs yang mana dalam pengoperasiannya membutuhkan submit captcha yang dihasilkan software Submitter yang berjalan di belakang layar. Bagi anda yang menggunakan wordpress tersedia plugin onlywire yang dapat diinstall ke plugin website anda. Jika anda berminat dengan onlywire silahkan segera berkunjung ke alamat http://onlywire.com/.

  4. Monkee
    Auto Submit Bookmarks tools
    tools submit ke social bookmark yang memberikan fasilitas member gratis atau free, anda tinggal mendaftar dan signup untuk mengakses 25 backlink secara gratis perharinya. Social monkee juga memberikan fasilitas premium bagi anda yang berhasil mensponsori 12 member baru melalui referensi link affiliate. Software ini full automatic untuk anda gunakan, jika berminat segera kunjungi http://www.socialmonkee.com/.

  5. SocialMarker
    Auto Submit Bookmarks tools
    memberikan fasilitas secara gratis dan fasilitas submit ke situs social bookmark secara semi automatic, situs social media atau social bookmark yang tersedia sebanyak 50 situs. Kemudahan memilih berdasarkan keingingan, apakah all (semua), best (terbaik), none, bookmarking, news atau dofollow adalah keunggulan tersendiri si social marker. Kecepatan internet anda menentukan jumlah yang ingin anda submit, jadi perhatikan jika koneksi anda lambat maka lakukan submit secara bertahap. Jika anda berminat dengan tools Socialmarker silahkan kunjungi http://www.socialmarker.com/.

  6. SocialADR
    Auto Submit Bookmarks tools
    SocialADR merupakan tools submit ke social bookmark atau media yang menawarkan fasilitas lebih (namun memerlukan credit) agar proses submit dapat di proses secara automatic. Jika kredit anda telah terkumpul sejumlah yang ditentukan maka proses submit ke 21 situs social bookmark atau media tersebut langsung berjalan secara automatic. Jika anda berminat dengan tools socialadr silahkan kunjungi http://socialadr.com/.

Semoga tools di atas bisa bermanfaat bagi Anda sekalian, khususnya yang sedang mengikuti kontes SEO.

salam dari admin blog

Read More

12 Oktober 2011



Regarding Web Browser Information

KangFirm84 Blogspot Com
Dokumen Download, Media Online
salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

Initially, I just wanted to try a fad web browser is there and available today. until finally I found a few apps Web Browsers web browser I want.

So .. if you want to try it too, please download themselves from the link I provided below.

Please select the browser you want:
  1. Internet Explorer
    Fast, clean and trusted. The world's most popular browser on Windows. It's Free from Microsoft. -- Download/Install | More info...
  2. Google Chrome
    A fast new browser from Google, try it now! -- Download/Install | More info...
  3. Mozilla Firefox
    Firefox is fast, flexible and secure. Proudly non-profit, we're always innovating for you. Try the free download! -- Download/Install | More info...
  4. Opera Browser
    Upgrade to a better browser. Opera is fast, smooth and easy to use. -- Download/Install | More info...
  5. Avant Browser
    The best web browser: Tiny, fast, simple, highly configurable and extendible. Perfect for everyone! -- Download/Install | More info...
  6. Maxthon Browser
    Unsurpassed speed and easy-to-use with features you will only find in Maxthon 3. Take you from view to do! 600 million downloads. -- Download/Install | More info...
  7. SRWare Iron
    Optimized for speed, safety and flexibility. See it for yourself! -- Download/Install | More info...
  8. RockMelt
    Facebook-integrated Social Browser. Add all your favorites including Twitter, YouTube and more. -- Download/Install | More info...
  9. Comodo Dragon
    Dragon for Windows from Comodo, the world's most secure browser. -- Download/Install | More info...
  10. K-Meleon
    Is an extremely fast, customizable, lightweight browser based on the Mozilla Gecko engine and designed specifically for Windows. -- Download/Install | More info...
  11. Lunascape
    Fast 3-in-1 browser that boosts your productivity. Get the best set of features, speed and flexibility. Free. -- Download/Install | More info...
  12. Sleipnir
    Experience the latest Web technology with the fast and secure Web browser from Japan. -- Download/Install | More info...
That is the information I can convey, enjoy it! (original shorcut from Windows XP Pro SP3 Tools: %SystemRoot%\system32\browserchoice.exe /launch)

salam dari admin blog

Read More

10 Oktober 2011



Portal SMS Unlimited Gratisan

KangFirm84 Blogspot Com
Menambahkan Widget Traffic Rank Alexa di Blog Sendiri

salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana


Harap Diingat!!!
Jangan Asal COPAS (Copy-Paste), baca dulu ToS (aturan penggunaannya) disini.

SMS Gratis/Free SMS

Send Your Messages Now!

from SmsOnline[dot]web[dot]id
Inbox: http://www.sms-online.web.id/sms/inbox.html?hp=[NmrHpTujuan]
from OfSms[dot]in
Inbox:
Get This Widget

salam dari admin blog


Read More

09 Oktober 2011



Aksesoris, Pernak-pernik Media Online

Tool Online | Addons SEO Untuk Mozilla Firefox

KangFirm84 Blogspot Com

salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

Berikut saya sarankan untuk memanfaatkan Addons pada browser Mozilla yang mungkin diperlukan bagi para blogger maupun webmaster guna melengkapi SEO (kualitas) website/blog-nya, Addons SEO dimaksud antara lain :
Untuk keterangan lebih detil-nya, nanti baca aja waktu halaman terbuka (sebelum men-download atau memasangnya pada browser Mozilla Firefox anda). Bagi yang mau upgrade versi terbarunya, silahkan klik disini.

salam dari admin blog


Read More



Portal SMS Unlimited Gratisan

KangFirm84 Blogspot Com
Menambahkan Widget Traffic Rank Alexa di Blog Sendiri

salam dari admin blog

Welcome to KF-84 Al-Ambity Bloggist Ankshana

Harap Diingat!!!
Jangan Asal COPAS (Copy-Paste), baca dulu ToS (aturan penggunaannya) disini.

SMS Gratis/Free SMS

Send Your Messages Now!

from Sms-Gratis[dot]web[dot]id
Inbox:
from SmsGratis[dot]co[dot]id
Inbox: http://www.smsgratis.cob.id/inbox.html?hp=[NmrHpTujuan]
Get This Widget

salam dari admin blog


Read More

Post Footer Featured (Ads468)

Free Search Engine Submission
Diberdayakan oleh Blogger.
 

Ads468-728 Between


KumpulBlogger.com

Blog Tools

Print to PDF

Convert this page to a PDF

Get targeted traffic/more visitor using
Revisitors
Please, Vote for this safelist at SafelistRankings!
Safelists Rankings

Enter your email address below to receive updates each time we publish new content.


Support Me!


Locations of visitors to this page

Blog Rank & Value


Alexa PageRank Checker Real PageRank Checker find my pagerank Free Google Pagerank Google Rank Checker Push 2 Check Pagerank PageRank

Advertising

Ads160-180 Left

Advertisement by KangFirm NoteWork

Ads600 Center

Exchanges


Ads160-180 Right

Advertisement by KangFirm NoteWork
 
BackTo Top