{"id":570,"date":"2024-08-06T04:44:19","date_gmt":"2024-08-06T04:44:19","guid":{"rendered":"https:\/\/eticketing.my\/?page_id=570"},"modified":"2025-11-12T11:43:21","modified_gmt":"2025-11-12T03:43:21","slug":"eticketing","status":"publish","type":"page","link":"https:\/\/eticketing.my\/ms\/","title":{"rendered":"ETicketing"},"content":{"rendered":"<header class=\"wp-block-template-part\">\n<div class=\"wp-block-group is-layout-constrained wp-container-core-group-is-layout-74935142 wp-block-group-is-layout-constrained wp-container-2 is-position-sticky\" style=\"margin-top:0;margin-bottom:0;padding-top:0;padding-right:0;padding-bottom:0;padding-left:0\">\n<div class=\"wp-block-group is-content-justification-space-between is-nowrap is-layout-flex wp-container-core-group-is-layout-cb46ffcb wp-block-group-is-layout-flex\"><div class=\"wp-block-site-logo\"><a href=\"https:\/\/eticketing.my\/ms\/\" class=\"custom-logo-link\" rel=\"home\"><img loading=\"lazy\" decoding=\"async\" width=\"160\" height=\"48\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png\" class=\"custom-logo\" alt=\"ETicketing\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01-18x5.png 18w\" sizes=\"auto, (max-width: 160px) 100vw, 160px\" \/><\/a><\/div>\n\n<nav class=\"is-responsive items-justified-left no-wrap wp-block-navigation has-poppins-font-family wp-container-content-9cfa9a5a is-content-justification-left is-nowrap is-layout-flex wp-container-core-navigation-is-layout-3ff2b00a wp-block-navigation-is-layout-flex\" aria-label=\"Header navigation\" \n\t\t data-wp-interactive=\"core\/navigation\" data-wp-context='{\"overlayOpenedBy\":{\"click\":false,\"hover\":false,\"focus\":false},\"type\":\"overlay\",\"roleAttribute\":\"\",\"ariaLabel\":\"Menu\"}'><button aria-haspopup=\"dialog\" aria-label=\"Open menu\" class=\"wp-block-navigation__responsive-container-open\" \n\t\t\t\tdata-wp-on--click=\"actions.openMenuOnClick\"\n\t\t\t\tdata-wp-on--keydown=\"actions.handleMenuKeydown\"\n\t\t\t><svg width=\"24\" height=\"24\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\"><path d=\"M5 5v1.5h14V5H5z\"><\/path><path d=\"M5 12.8h14v-1.5H5v1.5z\"><\/path><path d=\"M5 19h14v-1.5H5V19z\"><\/path><\/svg><\/button>\n\t\t\t\t<div class=\"wp-block-navigation__responsive-container\"  id=\"modal-1\" \n\t\t\t\tdata-wp-class--has-modal-open=\"state.isMenuOpen\"\n\t\t\t\tdata-wp-class--is-menu-open=\"state.isMenuOpen\"\n\t\t\t\tdata-wp-watch=\"callbacks.initMenu\"\n\t\t\t\tdata-wp-on--keydown=\"actions.handleMenuKeydown\"\n\t\t\t\tdata-wp-on--focusout=\"actions.handleMenuFocusout\"\n\t\t\t\ttabindex=\"-1\"\n\t\t\t>\n\t\t\t\t\t<div class=\"wp-block-navigation__responsive-close\" tabindex=\"-1\">\n\t\t\t\t\t\t<div class=\"wp-block-navigation__responsive-dialog\" \n\t\t\t\tdata-wp-bind--aria-modal=\"state.ariaModal\"\n\t\t\t\tdata-wp-bind--aria-label=\"state.ariaLabel\"\n\t\t\t\tdata-wp-bind--role=\"state.roleAttribute\"\n\t\t\t>\n\t\t\t\t\t\t\t<button aria-label=\"Close menu\" class=\"wp-block-navigation__responsive-container-close\" \n\t\t\t\tdata-wp-on--click=\"actions.closeMenuOnClick\"\n\t\t\t><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\" width=\"24\" height=\"24\" aria-hidden=\"true\" focusable=\"false\"><path d=\"m13.06 12 6.47-6.47-1.06-1.06L12 10.94 5.53 4.47 4.47 5.53 10.94 12l-6.47 6.47 1.06 1.06L12 13.06l6.47 6.47 1.06-1.06L13.06 12Z\"><\/path><\/svg><\/button>\n\t\t\t\t\t\t\t<div class=\"wp-block-navigation__responsive-container-content\" \n\t\t\t\tdata-wp-watch=\"callbacks.focusFirstElement\"\n\t\t\t id=\"modal-1-content\">\n\t\t\t\t\t\t\t\t<ul class=\"wp-block-navigation__container is-responsive items-justified-left no-wrap wp-block-navigation has-poppins-font-family\"><li class=\"wp-block-navigation-item wp-block-navigation-link\"><a class=\"wp-block-navigation-item__content\"  href=\"https:\/\/eticketing.my\/ms\/checkbooking\/\"><span class=\"wp-block-navigation-item__label\">Check Booking<\/span><\/a><\/li><li class=\"wp-block-navigation-item wp-block-navigation-link has-poppins-font-family\"><a class=\"wp-block-navigation-item__content\"  href=\"https:\/\/eticketing.my\/ms\/bus-partners\/\"><span class=\"wp-block-navigation-item__label\">Rakan Bas<\/span><\/a><\/li><li class=\"wp-block-navigation-item wp-block-navigation-link\"><a class=\"wp-block-navigation-item__content\"  href=\"https:\/\/eticketing.my\/ms\/contact-us\/\"><span class=\"wp-block-navigation-item__label\">Hubungi Kami<\/span><\/a><\/li><\/ul>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div><\/nav><\/div>\n<\/div>\n<\/header>\n\n\n<main class=\"wp-block-group is-layout-constrained wp-container-core-group-is-layout-c3c51dec wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--30);padding-bottom:0;padding-left:var(--wp--preset--spacing--30)\">\n<div class=\"wp-block-group alignfull has-background-secondary-background-color has-background is-layout-constrained wp-container-core-group-is-layout-6038fe71 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:0;padding-bottom:var(--wp--preset--spacing--20);padding-left:0\">\n<h2 class=\"wp-block-heading has-x-large-font-size\">Jangan lepaskan tawaran terkini<\/h2>\n\n\n\n<div class=\"wp-block-cloudcatch-splide-carousel wp-block-splide-carousel__container\"><figure class=\"wp-block-splide-carousel splide\" data-splide=\"{&quot;type&quot;:&quot;slide&quot;,&quot;perPage&quot;:3,&quot;speed&quot;:400,&quot;gap&quot;:&quot;20px&quot;,&quot;fixedWidth&quot;:&quot;&quot;,&quot;autoWidth&quot;:false,&quot;perMove&quot;:1,&quot;direction&quot;:&quot;ltr&quot;,&quot;fixedHeight&quot;:&quot;&quot;,&quot;height&quot;:&quot;&quot;,&quot;arrows&quot;:true,&quot;pagination&quot;:true,&quot;autoplay&quot;:false,&quot;interval&quot;:&quot;5000&quot;,&quot;pauseOnHover&quot;:true,&quot;mediaQuery&quot;:&quot;max&quot;,&quot;breakpoints&quot;:{}}\" data-splide-extensions=\"{&quot;autoScroll&quot;:false,&quot;urlHash&quot;:false,&quot;grid&quot;:false}\"><div class=\"wp-block-splide-carousel__track splide__track\"><div class=\"wp-block-splide-carousel__list splide__list\">\n\n<div class=\"wp-block-cloudcatch-splide-carousel-item wp-block-splide-carousel__slide splide__slide\">\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.google.com\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"2000\" height=\"1142\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic.jpg\" alt=\"\" class=\"wp-image-553\" style=\"aspect-ratio:16\/9;object-fit:cover\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic.jpg 2000w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-300x171.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-1024x585.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-768x439.jpg 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-1536x877.jpg 1536w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-500x286.jpg 500w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-800x457.jpg 800w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-1280x731.jpg 1280w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/08\/cropped-hentian-duta-cosmic-1920x1096.jpg 1920w\" sizes=\"auto, (max-width: 2000px) 100vw, 2000px\" \/><\/a><figcaption class=\"wp-element-caption\">Merdeka Day Promotion<\/figcaption><\/figure>\n\n<\/div>\n\n\n<div class=\"wp-block-cloudcatch-splide-carousel-item wp-block-splide-carousel__slide splide__slide\">\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1080\" height=\"576\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/QRCode-staytuned.jpg\" alt=\"\" class=\"wp-image-24\" style=\"aspect-ratio:16\/9;object-fit:cover\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/QRCode-staytuned.jpg 1080w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/QRCode-staytuned-300x160.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/QRCode-staytuned-1024x546.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/QRCode-staytuned-768x410.jpg 768w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><figcaption class=\"wp-element-caption\">Easy Boarding QR Code<\/figcaption><\/figure>\n\n<\/div>\n\n\n<div class=\"wp-block-cloudcatch-splide-carousel-item wp-block-splide-carousel__slide splide__slide\">\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1080\" height=\"576\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Special-Discount.jpg\" alt=\"\" class=\"wp-image-25\" style=\"aspect-ratio:16\/9;object-fit:cover\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Special-Discount.jpg 1080w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Special-Discount-300x160.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Special-Discount-1024x546.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Special-Discount-768x410.jpg 768w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><figcaption class=\"wp-element-caption\">Diskaun Sehingga 10%<\/figcaption><\/figure>\n\n<\/div>\n\n<\/div><\/div><\/figure><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-cover is-light\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"377\" class=\"wp-block-cover__image-background wp-image-2958 size-large\" alt=\"\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-1024x377.jpg\" data-object-fit=\"cover\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-1024x377.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-300x110.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-768x282.jpg 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-1536x565.jpg 1536w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-18x7.jpg 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-500x184.jpg 500w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-800x294.jpg 800w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing-1280x471.jpg 1280w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/04\/Website-slider-Vibes-RayaEticketing.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><span aria-hidden=\"true\" class=\"wp-block-cover__background has-background-dim\" style=\"background-color:#c8834e\"><\/span><div class=\"wp-block-cover__inner-container is-layout-constrained wp-block-cover-is-layout-constrained\">\n<div class=\"wp-block-columns are-vertically-aligned-center mobile--no-padding-top is-layout-flex wp-container-core-columns-is-layout-d0d447cb wp-block-columns-is-layout-flex\" style=\"padding-top:0;padding-bottom:0\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h1 class=\"wp-block-heading has-text-align-center\" style=\"margin-top:0;margin-bottom:0;font-size:clamp(28.836px, 1.802rem + ((1vw - 3.2px) * 2.3), 50px);\">Tiket Anda Ke Perjalanan Yang Laju, Mudah dan Murah<\/h1>\n\n\n\n<section id=\"g-iwwi1ss\" class=\"wp-block-gutentor-m9 section-g-iwwi1ss gutentor-module gutentor-module-form-wrapper\"><div class=\"grid-container\"><script>var fromLocation =  [{\"id\":23,\"code\":\"BTG\",\"name\":\"Bentong\",\"states\":\"Pahang\"},{\"id\":215,\"code\":\"TBA\",\"name\":\"Taman Bendahara\",\"states\":\"Kelantan\"},{\"id\":69,\"code\":\"KLG\",\"name\":\"Klang\",\"states\":\"Selangor\"},{\"id\":192,\"code\":\"SL\",\"name\":\"Selising\",\"states\":\"Kelantan\"},{\"id\":209,\"code\":\"PMH\",\"name\":\"Pasir Tumboh\",\"states\":\"Kelantan\"},{\"id\":278,\"code\":\"STH\",\"name\":\"SUNGAI TERAH\",\"states\":\"Kelantan\"},{\"id\":315,\"code\":\"CKJ\",\"name\":\"Changkat Jering\",\"states\":\"Perak\"},{\"id\":169,\"code\":\"TIN\",\"name\":\"Teluk Intan\",\"states\":\"Perak\"},{\"id\":132,\"code\":\"RPJG\",\"name\":\"Rantau Panjang\",\"states\":\"Kelantan\"},{\"id\":109,\"code\":\"NLI\",\"name\":\"Nilai\",\"states\":\"Negeri Sembilan\"},{\"id\":89,\"code\":\"KTN\",\"name\":\"Kuantan\",\"states\":\"Pahang\"},{\"id\":338,\"code\":\"TKGS\",\"name\":\"Terminal Kuching Sentral\",\"states\":\"Sarawak\"},{\"id\":195,\"code\":\"GTG\",\"name\":\"Genting Highlands\",\"states\":\"Pahang\"},{\"id\":3,\"code\":\"AS\",\"name\":\"Alor Setar\",\"states\":\"Kedah\"},{\"id\":152,\"code\":\"SKD\",\"name\":\"Skudai\",\"states\":\"Johor\"},{\"id\":295,\"code\":\"SLR\",\"name\":\"Balok(Sungai Ular)\",\"states\":\"Pahang\"},{\"id\":189,\"code\":\"RWG\",\"name\":\"Rawang\",\"states\":\"Selangor\"},{\"id\":335,\"code\":\"SPSK\",\"name\":\"Simpang Saratok\",\"states\":\"Sarawak\"},{\"id\":212,\"code\":\"PMS\",\"name\":\"Permaisuri\",\"states\":\"Terengganu\"},{\"id\":235,\"code\":\"PSA\",\"name\":\"Pokok Sena\",\"states\":\"Kedah\"},{\"id\":172,\"code\":\"TRI\",\"name\":\"Triang\",\"states\":\"Pahang\"},{\"id\":66,\"code\":\"KRT\",\"name\":\"Kertih\",\"states\":\"Terengganu\"},{\"id\":229,\"code\":\"KDK\",\"name\":\"Kadok\",\"states\":\"Kelantan\"},{\"id\":275,\"code\":\"KBH\",\"name\":\"KUALA BALAH\",\"states\":\"Kelantan\"},{\"id\":318,\"code\":\"HUNZ\",\"name\":\"Hospital Unisza\",\"states\":\"Terengganu\"},{\"id\":126,\"code\":\"PTN\",\"name\":\"Pontian\",\"states\":\"Johor\"},{\"id\":26,\"code\":\"BJL\",\"name\":\"Bukit Jalil\",\"states\":\"Kuala Lumpur\"},{\"id\":129,\"code\":\"PCDG\",\"name\":\"Pulai Condong\",\"states\":\"Kelantan\"},{\"id\":106,\"code\":\"MR\",\"name\":\"Muar\",\"states\":\"Johor\"},{\"id\":63,\"code\":\"KMTG\",\"name\":\"Kamunting\",\"states\":\"Perak\"},{\"id\":255,\"code\":\"HGM\",\"name\":\"Hentian Gua Musang\",\"states\":\"Kelantan\"},{\"id\":43,\"code\":\"GRC\",\"name\":\"Guar Chempedak\",\"states\":\"Kedah\"},{\"id\":292,\"code\":\"CLK\",\"name\":\"Chalok\",\"states\":\"Terengganu\"},{\"id\":49,\"code\":\"JPK\",\"name\":\"Jalan Pekeliling\",\"states\":\"Kuala Lumpur\"},{\"id\":298,\"code\":\"SCLK\",\"name\":\"Setiu(Chalok Kedai)\",\"states\":\"Terengganu\"},{\"id\":261,\"code\":\"BT6\",\"name\":\"Batu 6\",\"states\":\"Terengganu\"},{\"id\":238,\"code\":\"KMK\",\"name\":\"Kemasik\",\"states\":\"Terengganu\"},{\"id\":92,\"code\":\"LBS\",\"name\":\"Labis\",\"states\":\"Johor\"},{\"id\":115,\"code\":\"PGDG\",\"name\":\"Pasir Gudang\",\"states\":\"Johor\"},{\"id\":161,\"code\":\"TP\",\"name\":\"Taiping\",\"states\":\"Perak\"},{\"id\":29,\"code\":\"BKP\",\"name\":\"Bukit Payung\",\"states\":\"Terengganu\"},{\"id\":175,\"code\":\"WKFT\",\"name\":\"Wakaf Tapai\",\"states\":\"Terengganu\"},{\"id\":324,\"code\":\"TBG\",\"name\":\"Terminal Bersepadu Gombak\",\"states\":\"Selangor\"},{\"id\":221,\"code\":\"TMK\",\"name\":\"Tanjung Gemok\",\"states\":\"Johor\"},{\"id\":75,\"code\":\"KTT\",\"name\":\"Kota Tinggi\",\"states\":\"Johor\"},{\"id\":344,\"code\":\"OBS\",\"name\":\"Singapore(Oxley Bizhub)\",\"states\":\"Singapore\"},{\"id\":158,\"code\":\"SP\",\"name\":\"Sungai Petani\",\"states\":\"Kedah\"},{\"id\":244,\"code\":\"TAMN\",\"name\":\"Tun Aminah\",\"states\":\"Johor\"},{\"id\":52,\"code\":\"JGK\",\"name\":\"Jengka\",\"states\":\"Pahang\"},{\"id\":95,\"code\":\"LMT\",\"name\":\"Lumut\",\"states\":\"Perak\"},{\"id\":72,\"code\":\"KB\",\"name\":\"Kota Bharu\",\"states\":\"Kelantan\"},{\"id\":118,\"code\":\"PKN\",\"name\":\"Pekan\",\"states\":\"Pahang\"},{\"id\":258,\"code\":\"CRTG\",\"name\":\"Cherating\",\"states\":\"Pahang\"},{\"id\":264,\"code\":\"ISKJ\",\"name\":\"Seri Iskandar(J)\",\"states\":\"Johor\"},{\"id\":281,\"code\":\"LGG\",\"name\":\"LENGGONG\",\"states\":\"Perak\"},{\"id\":78,\"code\":\"KBST\",\"name\":\"Kuala Besut\",\"states\":\"Terengganu\"},{\"id\":218,\"code\":\"UJL\",\"name\":\"UMK Jeli\",\"states\":\"Kelantan\"},{\"id\":327,\"code\":\"MYY\",\"name\":\"Terminal Bas Miri\",\"states\":\"Sarawak\"},{\"id\":321,\"code\":\"USM\",\"name\":\"USM Pulau Pinang\",\"states\":\"Pulau Pinang\"},{\"id\":12,\"code\":\"BSR\",\"name\":\"Bagan Serai\",\"states\":\"Perak\"},{\"id\":178,\"code\":\"NLM\",\"name\":\"Nilam Puri\",\"states\":\"Kelantan\"},{\"id\":35,\"code\":\"CHN\",\"name\":\"Chini\",\"states\":\"Pahang\"},{\"id\":135,\"code\":\"SBM\",\"name\":\"Sabak Bernam\",\"states\":\"Selangor\"},{\"id\":112,\"code\":\"PRP\",\"name\":\"Pantai Remis\",\"states\":\"Perak\"},{\"id\":55,\"code\":\"JTH\",\"name\":\"Jertih\",\"states\":\"Terengganu\"},{\"id\":304,\"code\":\"PBP\",\"name\":\"Paka(Balai Polis)\",\"states\":\"Terengganu\"},{\"id\":241,\"code\":\"TPT\",\"name\":\"Tumpat\",\"states\":\"Kelantan\"},{\"id\":98,\"code\":\"MSI\",\"name\":\"Masai\",\"states\":\"Johor\"},{\"id\":144,\"code\":\"SIK\",\"name\":\"Sik\",\"states\":\"Kedah\"},{\"id\":167,\"code\":\"TKY\",\"name\":\"Tasik Kenyir\",\"states\":\"Terengganu\"},{\"id\":330,\"code\":\"TTU\",\"name\":\"Tatau\",\"states\":\"Sarawak\"},{\"id\":307,\"code\":\"KBKS\",\"name\":\"Kota Bharu - Kota Seri Bong\",\"states\":\"Kelantan\"},{\"id\":230,\"code\":\"BBG\",\"name\":\"Bukit Bunga\",\"states\":\"Kelantan\"},{\"id\":313,\"code\":\"SEC13\",\"name\":\"Seksyen 13 Shah Alam\",\"states\":\"Selangor\"},{\"id\":21,\"code\":\"BG\",\"name\":\"Batu Gajah\",\"states\":\"Perak\"},{\"id\":121,\"code\":\"PG\",\"name\":\"Penang(SG Nibong)\",\"states\":\"Pulau Pinang\"},{\"id\":273,\"code\":\"ARWNA\",\"name\":\"Genting Awana\",\"states\":\"Pahang\"},{\"id\":250,\"code\":\"MRN\",\"name\":\"Maran\",\"states\":\"Pahang\"},{\"id\":58,\"code\":\"JJY\",\"name\":\"Johor Jaya\",\"states\":\"Johor\"},{\"id\":81,\"code\":\"KRI\",\"name\":\"Kuala Krai\",\"states\":\"Kelantan\"},{\"id\":64,\"code\":\"KGR\",\"name\":\"Kangar\",\"states\":\"Perlis\"},{\"id\":207,\"code\":\"LLH\",\"name\":\"Laloh\",\"states\":\"Kelantan\"},{\"id\":44,\"code\":\"GRN\",\"name\":\"Gurun\",\"states\":\"Kedah\"},{\"id\":293,\"code\":\"SGT2\",\"name\":\"Segamat(KFC Tmn Yayasan)\",\"states\":\"Johor\"},{\"id\":141,\"code\":\"ISK\",\"name\":\"Seri Iskandar\",\"states\":\"Perak\"},{\"id\":187,\"code\":\"UTR\",\"name\":\"Ulu Tiram\",\"states\":\"Johor\"},{\"id\":164,\"code\":\"TKRG\",\"name\":\"Tanjung Karang\",\"states\":\"Selangor\"},{\"id\":287,\"code\":\"WTB\",\"name\":\"Wakaf Tengah\",\"states\":\"Terengganu\"},{\"id\":310,\"code\":\"PTLG\",\"name\":\"Pasir Tumboh(SK Long Gafar)\",\"states\":\"Kelantan\"},{\"id\":210,\"code\":\"PHL\",\"name\":\"Pauh Lima\",\"states\":\"Kelantan\"},{\"id\":333,\"code\":\"SBTG\",\"name\":\"Simpang Bintangor\",\"states\":\"Sarawak\"},{\"id\":270,\"code\":\"SMPL\",\"name\":\"Simpang Pulai\",\"states\":\"Perak\"},{\"id\":224,\"code\":\"UMT\",\"name\":\"Universiti Malaysia Terengganu\",\"states\":\"Terengganu\"},{\"id\":124,\"code\":\"PHU\",\"name\":\"Pengkalan Hulu\",\"states\":\"Perak\"},{\"id\":84,\"code\":\"KNR\",\"name\":\"Kuala Nerang\",\"states\":\"Kedah\"},{\"id\":227,\"code\":\"klia2\",\"name\":\"Kuala Lumpur International Airport 2\",\"states\":\"Selangor\"},{\"id\":204,\"code\":\"JLT\",\"name\":\"Jelawat\",\"states\":\"Kelantan\"},{\"id\":61,\"code\":\"KPR\",\"name\":\"Kampar\",\"states\":\"Perak\"},{\"id\":41,\"code\":\"GK\",\"name\":\"Grik\",\"states\":\"Perak\"},{\"id\":290,\"code\":\"PNK\",\"name\":\"Penarik\",\"states\":\"Terengganu\"},{\"id\":247,\"code\":\"PLH\",\"name\":\"Paloh\",\"states\":\"Kelantan\"},{\"id\":213,\"code\":\"CTK\",\"name\":\"PPK Chetok\",\"states\":\"Kelantan\"},{\"id\":336,\"code\":\"SPBG\",\"name\":\"Simpang Betong\",\"states\":\"Sarawak\"},{\"id\":236,\"code\":\"MRG\",\"name\":\"Marang\",\"states\":\"Terengganu\"},{\"id\":259,\"code\":\"CHDRG\",\"name\":\"Chendering\",\"states\":\"Terengganu\"},{\"id\":113,\"code\":\"PBT\",\"name\":\"Parit Buntar\",\"states\":\"Perak\"},{\"id\":27,\"code\":\"BKH\",\"name\":\"Bukit Kayu Hitam\",\"states\":\"Kedah\"},{\"id\":276,\"code\":\"JWG\",\"name\":\"JELAWANG (GUNUNG STONG)\",\"states\":\"Kelantan\"},{\"id\":319,\"code\":\"MYT\",\"name\":\"Mydin Tunjong\",\"states\":\"Kelantan\"},{\"id\":322,\"code\":\"BGO\",\"name\":\"Bagan Datuk\",\"states\":\"Perak\"},{\"id\":173,\"code\":\"ULDU\",\"name\":\"Uitm Lendu\",\"states\":\"Melaka\"},{\"id\":156,\"code\":\"SGB\",\"name\":\"Sungai Besar\",\"states\":\"Selangor\"},{\"id\":130,\"code\":\"PNG\",\"name\":\"Penang\",\"states\":\"Pulau Pinang\"},{\"id\":87,\"code\":\"KRP\",\"name\":\"Kuala Rompin\",\"states\":\"Pahang\"},{\"id\":256,\"code\":\"GUNG\",\"name\":\"Bachok-Gunong\",\"states\":\"Kelantan\"},{\"id\":7,\"code\":\"AHJ\",\"name\":\"Ayer Hitam(J)\",\"states\":\"Johor\"},{\"id\":299,\"code\":\"STO\",\"name\":\"Setiu(sg. Tong)\",\"states\":\"Terengganu\"},{\"id\":342,\"code\":\"SRN\",\"name\":\"Terminal Bas Serian\",\"states\":\"Sarawak\"},{\"id\":150,\"code\":\"WLD\",\"name\":\"Singapore Woodlands\",\"states\":\"Singapore\"},{\"id\":24,\"code\":\"BD\",\"name\":\"Bidor\",\"states\":\"Perak\"},{\"id\":47,\"code\":\"IPH\",\"name\":\"Ipoh\",\"states\":\"Perak\"},{\"id\":70,\"code\":\"KLU\",\"name\":\"Kluang\",\"states\":\"Johor\"},{\"id\":239,\"code\":\"DPM\",\"name\":\"Depo Mutiara\",\"states\":\"Kelantan\"},{\"id\":216,\"code\":\"TKM\",\"name\":\"Teluk Mesira\",\"states\":\"Kelantan\"},{\"id\":233,\"code\":\"SLY\",\"name\":\"Selayang(JPN Gombak)\",\"states\":\"Selangor\"},{\"id\":30,\"code\":\"BTW\",\"name\":\"Butterworth\",\"states\":\"Pulau Pinang\"},{\"id\":279,\"code\":\"ALS\",\"name\":\"Ayer Lanas\",\"states\":\"Kelantan\"},{\"id\":316,\"code\":\"BKM\",\"name\":\"Bukit Merah\",\"states\":\"Perak\"},{\"id\":170,\"code\":\"TLH\",\"name\":\"Temerloh\",\"states\":\"Pahang\"},{\"id\":176,\"code\":\"YP\",\"name\":\"Yong Peng\",\"states\":\"Johor\"},{\"id\":153,\"code\":\"SMNJG\",\"name\":\"Sri Manjung\",\"states\":\"Perak\"},{\"id\":110,\"code\":\"PGH\",\"name\":\"Pagoh\",\"states\":\"Johor\"},{\"id\":10,\"code\":\"ATP\",\"name\":\"Ayer Tawar\",\"states\":\"Perak\"},{\"id\":133,\"code\":\"RAUB\",\"name\":\"Raub\",\"states\":\"Pahang\"},{\"id\":196,\"code\":\"KLIA\",\"name\":\"Kuala Lumpur International Airport\",\"states\":\"Selangor\"},{\"id\":90,\"code\":\"KLA\",\"name\":\"Kulai\",\"states\":\"Johor\"},{\"id\":253,\"code\":\"MEG\",\"name\":\"Mercang\",\"states\":\"Terengganu\"},{\"id\":96,\"code\":\"MCHG\",\"name\":\"Machang\",\"states\":\"Kelantan\"},{\"id\":142,\"code\":\"STWN\",\"name\":\"Sitiawan\",\"states\":\"Perak\"},{\"id\":282,\"code\":\"SBH\",\"name\":\"SUNGAI BULOH\",\"states\":\"Selangor\"},{\"id\":288,\"code\":\"RSA\",\"name\":\"Rusila\",\"states\":\"Terengganu\"},{\"id\":305,\"code\":\"MMEG\",\"name\":\"Marang(Merchang)\",\"states\":\"Terengganu\"},{\"id\":219,\"code\":\"UMP\",\"name\":\"UMP\",\"states\":\"Pahang\"},{\"id\":79,\"code\":\"KKSR\",\"name\":\"Kuala Kangsar\",\"states\":\"Perak\"},{\"id\":328,\"code\":\"BNH\",\"name\":\"Batu Niah\",\"states\":\"Sarawak\"},{\"id\":265,\"code\":\"FWH\",\"name\":\"First World Hotel\",\"states\":\"Pahang\"},{\"id\":179,\"code\":\"KLS\",\"name\":\"KL Sentral\",\"states\":\"Kuala Lumpur\"},{\"id\":205,\"code\":\"KRJ\",\"name\":\"Kg. Raja\",\"states\":\"Terengganu\"},{\"id\":13,\"code\":\"BAH\",\"name\":\"Bahau\",\"states\":\"Negeri Sembilan\"},{\"id\":136,\"code\":\"SGT\",\"name\":\"Segamat\",\"states\":\"Johor\"},{\"id\":242,\"code\":\"WZN\",\"name\":\"Wakaf Zain\",\"states\":\"Kelantan\"},{\"id\":56,\"code\":\"JTR\",\"name\":\"Jitra\",\"states\":\"Kedah\"},{\"id\":199,\"code\":\"DPG\",\"name\":\"Kuala Krai(D.Peladang)\",\"states\":\"Kelantan\"},{\"id\":99,\"code\":\"MT\",\"name\":\"Masjid Tanah\",\"states\":\"Melaka\"},{\"id\":285,\"code\":\"PKG\",\"name\":\"Marang(Pulau Kerengga)\",\"states\":\"Terengganu\"},{\"id\":116,\"code\":\"PMAS\",\"name\":\"Pasir Mas\",\"states\":\"Kelantan\"},{\"id\":139,\"code\":\"SDG\",\"name\":\"Serdang\",\"states\":\"Kedah\"},{\"id\":162,\"code\":\"TMH\",\"name\":\"Tanah Merah\",\"states\":\"Kelantan\"},{\"id\":325,\"code\":\"HOP\",\"name\":\"Hotel Perdana\",\"states\":\"Kelantan\"},{\"id\":122,\"code\":\"PDG\",\"name\":\"Pendang\",\"states\":\"Kedah\"},{\"id\":76,\"code\":\"KROH\",\"name\":\"Kroh\",\"states\":\"Perak\"},{\"id\":202,\"code\":\"CKU\",\"name\":\"Chiku 3\",\"states\":\"Kelantan\"},{\"id\":225,\"code\":\"DNK\",\"name\":\"Danok\",\"states\":\"Thailand\"},{\"id\":33,\"code\":\"CLN\",\"name\":\"Changlun\",\"states\":\"Kedah\"},{\"id\":39,\"code\":\"GPG\",\"name\":\"Gopeng\",\"states\":\"Perak\"},{\"id\":16,\"code\":\"BPR\",\"name\":\"Bandar Penawar\",\"states\":\"Johor\"},{\"id\":182,\"code\":\"JSN\",\"name\":\"Jasin\",\"states\":\"Melaka\"},{\"id\":159,\"code\":\"SGRT\",\"name\":\"Sungai Rengit\",\"states\":\"Johor\"},{\"id\":302,\"code\":\"MKM\",\"name\":\"Kemasik(MesraMall)\",\"states\":\"Terengganu\"},{\"id\":165,\"code\":\"TGM\",\"name\":\"Tanjung Malim\",\"states\":\"Perak\"},{\"id\":211,\"code\":\"PGT\",\"name\":\"Peringat\",\"states\":\"Kelantan\"},{\"id\":188,\"code\":\"PCHG\",\"name\":\"Puchong\",\"states\":\"Selangor\"},{\"id\":311,\"code\":\"TPNG\",\"name\":\"Depo Naza(Tapang)\",\"states\":\"Kelantan\"},{\"id\":334,\"code\":\"SBLT\",\"name\":\"Simpang Bulat\",\"states\":\"Sarawak\"},{\"id\":125,\"code\":\"PKBR\",\"name\":\"Pengkalan Kubor\",\"states\":\"Kelantan\"},{\"id\":65,\"code\":\"KMM\",\"name\":\"Kemaman\",\"states\":\"Terengganu\"},{\"id\":317,\"code\":\"AOP\",\"name\":\"Alor Pongsu\",\"states\":\"Perak\"},{\"id\":171,\"code\":\"KB1\",\"name\":\"Terminal Tesco(kb)\",\"states\":\"Kelantan\"},{\"id\":25,\"code\":\"BKB\",\"name\":\"Bukit Beruntung\",\"states\":\"Selangor\"},{\"id\":271,\"code\":\"CMHG\",\"name\":\"Cameron Highlands\",\"states\":\"Pahang\"},{\"id\":105,\"code\":\"MZS\",\"name\":\"Muadzam Shah\",\"states\":\"Pahang\"},{\"id\":228,\"code\":\"UMC\",\"name\":\"Uitm Machang\",\"states\":\"Kelantan\"},{\"id\":85,\"code\":\"KP\",\"name\":\"Kuala Perlis\",\"states\":\"Perlis\"},{\"id\":62,\"code\":\"KGKH\",\"name\":\"Kampung Koh\",\"states\":\"Perak\"},{\"id\":42,\"code\":\"GMSG\",\"name\":\"Gua Musang\",\"states\":\"Kelantan\"},{\"id\":291,\"code\":\"KBB\",\"name\":\"Bari\",\"states\":\"Terengganu\"},{\"id\":254,\"code\":\"KJL\",\"name\":\"Kijal\",\"states\":\"Terengganu\"},{\"id\":248,\"code\":\"PJL\",\"name\":\"Politeknik Jeli\",\"states\":\"Kelantan\"},{\"id\":148,\"code\":\"SGP\",\"name\":\"Singapore\",\"states\":\"Singapore\"},{\"id\":168,\"code\":\"TBS\",\"name\":\"Terminal Bersepadu Selatan\",\"states\":\"Kuala Lumpur\"},{\"id\":191,\"code\":\"ST\",\"name\":\"Setiu\",\"states\":\"Terengganu\"},{\"id\":331,\"code\":\"SSLG\",\"name\":\"Simpang Selangau\",\"states\":\"Sarawak\"},{\"id\":231,\"code\":\"UNISZA\",\"name\":\"UNISZA\",\"states\":\"Terengganu\"},{\"id\":128,\"code\":\"PDR\",\"name\":\"Puduraya\",\"states\":\"Kuala Lumpur\"},{\"id\":22,\"code\":\"BPT\",\"name\":\"Batu Pahat\",\"states\":\"Johor\"},{\"id\":274,\"code\":\"STGH\",\"name\":\"Simpang Tenggaroh\",\"states\":\"Johor\"},{\"id\":82,\"code\":\"KLI\",\"name\":\"Kuala Lipis\",\"states\":\"Pahang\"},{\"id\":88,\"code\":\"KT\",\"name\":\"Kuala Terengganu\",\"states\":\"Terengganu\"},{\"id\":208,\"code\":\"PCR\",\"name\":\"Panchor\",\"states\":\"Kelantan\"},{\"id\":337,\"code\":\"SJLK\",\"name\":\"Simpang Jelukong\",\"states\":\"Sarawak\"},{\"id\":45,\"code\":\"HDT\",\"name\":\"Hentian Duta\",\"states\":\"Kuala Lumpur\"},{\"id\":294,\"code\":\"KMH\",\"name\":\"Kemahang\",\"states\":\"Kelantan\"},{\"id\":145,\"code\":\"SG\",\"name\":\"Simpang\",\"states\":\"Perak\"},{\"id\":2,\"code\":\"ALG\",\"name\":\"Alor Gajah\",\"states\":\"Melaka\"},{\"id\":48,\"code\":\"IPHMG\",\"name\":\"Ipoh(medan Gopeng)\",\"states\":\"Perak\"},{\"id\":71,\"code\":\"KLNS\",\"name\":\"Kok Lanas\",\"states\":\"Kelantan\"},{\"id\":117,\"code\":\"PTH\",\"name\":\"Pasir Puteh\",\"states\":\"Kelantan\"},{\"id\":240,\"code\":\"GEM\",\"name\":\"Gemas\",\"states\":\"Negeri Sembilan\"},{\"id\":257,\"code\":\"GMC\",\"name\":\"Gemenceh\",\"states\":\"Negeri Sembilan\"},{\"id\":280,\"code\":\"SMP\",\"name\":\"Simpang Taiping\",\"states\":\"Perak\"},{\"id\":31,\"code\":\"CHA\",\"name\":\"Chaah\",\"states\":\"Johor\"},{\"id\":217,\"code\":\"TBL\",\"name\":\"Tok Bali\",\"states\":\"Kelantan\"},{\"id\":154,\"code\":\"SPTR\",\"name\":\"Sri Putri\",\"states\":\"Johor\"},{\"id\":134,\"code\":\"RPN\",\"name\":\"Rompin\",\"states\":\"Pahang\"},{\"id\":11,\"code\":\"BCK\",\"name\":\"Bachok\",\"states\":\"Kelantan\"},{\"id\":111,\"code\":\"PAKA\",\"name\":\"Paka\",\"states\":\"Terengganu\"},{\"id\":54,\"code\":\"JRT\",\"name\":\"Jerantut\",\"states\":\"Pahang\"},{\"id\":303,\"code\":\"IKM\",\"name\":\"Kemasik(IKBN)\",\"states\":\"Terengganu\"},{\"id\":91,\"code\":\"KLM\",\"name\":\"Kulim\",\"states\":\"Kedah\"},{\"id\":214,\"code\":\"PCG\",\"name\":\"Puchong Prima\",\"states\":\"Selangor\"},{\"id\":237,\"code\":\"TMNU\",\"name\":\"Taman U\",\"states\":\"Johor\"},{\"id\":260,\"code\":\"BTS\",\"name\":\"Berjaya Times Square\",\"states\":\"Kuala Lumpur\"},{\"id\":283,\"code\":\"DMAI\",\"name\":\"Damansara Damai\",\"states\":\"Selangor\"},{\"id\":220,\"code\":\"EDU\",\"name\":\"Endau\",\"states\":\"Johor\"},{\"id\":114,\"code\":\"PRJ\",\"name\":\"Parit Raja\",\"states\":\"Johor\"},{\"id\":68,\"code\":\"KTH\",\"name\":\"Ketereh\",\"states\":\"Kelantan\"},{\"id\":277,\"code\":\"MRT\",\"name\":\"MERANTO\",\"states\":\"Kelantan\"},{\"id\":28,\"code\":\"BM\",\"name\":\"Bukit Mertajam\",\"states\":\"Pulau Pinang\"},{\"id\":323,\"code\":\"PLH2\",\"name\":\"Paloh 2\",\"states\":\"Kelantan\"},{\"id\":174,\"code\":\"UUM\",\"name\":\"Uum Sintok\",\"states\":\"Kedah\"},{\"id\":74,\"code\":\"KSS\",\"name\":\"Kota Sarang Semut\",\"states\":\"Kedah\"},{\"id\":320,\"code\":\"UTM\",\"name\":\"UTM Skudai\",\"states\":\"Johor\"},{\"id\":131,\"code\":\"PTJ\",\"name\":\"Putrajaya\",\"states\":\"Kuala Lumpur\"},{\"id\":137,\"code\":\"SKC\",\"name\":\"Sekinchan\",\"states\":\"Selangor\"},{\"id\":51,\"code\":\"JELI\",\"name\":\"Jeli\",\"states\":\"Kelantan\"},{\"id\":300,\"code\":\"MTZ\",\"name\":\"K. Terengganu (Msd Terapung)\",\"states\":\"Terengganu\"},{\"id\":151,\"code\":\"BNLAY\",\"name\":\"Singapore(Boon Lay)\",\"states\":\"Singapore\"},{\"id\":194,\"code\":\"HDY\",\"name\":\"Hatyai\",\"states\":\"Thailand\"},{\"id\":200,\"code\":\"MLR\",\"name\":\"Melor\",\"states\":\"Kelantan\"},{\"id\":343,\"code\":\"JUR\",\"name\":\"Singapore(Jurong East)\",\"states\":\"Singapore\"},{\"id\":309,\"code\":\"KSEL\",\"name\":\"Kuala Selangor\",\"states\":\"Selangor\"},{\"id\":286,\"code\":\"GBL\",\"name\":\"GONG BALAI\",\"states\":\"Terengganu\"},{\"id\":263,\"code\":\"AJIL\",\"name\":\"Ajil\",\"states\":\"Terengganu\"},{\"id\":140,\"code\":\"SBN\",\"name\":\"Seremban\",\"states\":\"Negeri Sembilan\"},{\"id\":163,\"code\":\"TGK\",\"name\":\"Tangkak\",\"states\":\"Johor\"},{\"id\":332,\"code\":\"SBW\",\"name\":\"Terminal Bas Sibu\",\"states\":\"Sarawak\"},{\"id\":77,\"code\":\"KBRG\",\"name\":\"Kuala Berang\",\"states\":\"Terengganu\"},{\"id\":17,\"code\":\"BTR\",\"name\":\"Keratong\",\"states\":\"Pahang\"},{\"id\":326,\"code\":\"SGC\",\"name\":\"Singapore(Grantral Complex)\",\"states\":\"Singapore\"},{\"id\":269,\"code\":\"JLTNG\",\"name\":\"Jelutong\",\"states\":\"Pulau Pinang\"},{\"id\":123,\"code\":\"PCPA\",\"name\":\"Pengkalan Chepa\",\"states\":\"Kelantan\"},{\"id\":60,\"code\":\"KJG\",\"name\":\"Kajang\",\"states\":\"Selangor\"},{\"id\":83,\"code\":\"KL\",\"name\":\"Kuala Lumpur\",\"states\":\"Kuala Lumpur\"},{\"id\":34,\"code\":\"CMR\",\"name\":\"Chemor\",\"states\":\"Perak\"},{\"id\":40,\"code\":\"GWD\",\"name\":\"Greenword\",\"states\":\"Selangor\"},{\"id\":183,\"code\":\"MRLM\",\"name\":\"Merlimau\",\"states\":\"Melaka\"},{\"id\":160,\"code\":\"SSPT\",\"name\":\"Sungai Siput\",\"states\":\"Perak\"},{\"id\":103,\"code\":\"MSG\",\"name\":\"Mersing\",\"states\":\"Johor\"},{\"id\":289,\"code\":\"MER\",\"name\":\"Merang\",\"states\":\"Terengganu\"},{\"id\":97,\"code\":\"MNJG\",\"name\":\"Manjung\",\"states\":\"Perak\"},{\"id\":143,\"code\":\"SA\",\"name\":\"Shah Alam\",\"states\":\"Selangor\"},{\"id\":120,\"code\":\"PGK\",\"name\":\"Penang(komtar)\",\"states\":\"Pulau Pinang\"},{\"id\":166,\"code\":\"TPH\",\"name\":\"Tapah\",\"states\":\"Perak\"},{\"id\":329,\"code\":\"BTU\",\"name\":\"Terminal Bas Bintulu\",\"states\":\"Sarawak\"},{\"id\":80,\"code\":\"KTL\",\"name\":\"Kuala Ketil\",\"states\":\"Kedah\"},{\"id\":57,\"code\":\"JB\",\"name\":\"Johor Bahru\",\"states\":\"Johor\"},{\"id\":206,\"code\":\"KKN\",\"name\":\"Kubang Kerian\",\"states\":\"Kelantan\"},{\"id\":14,\"code\":\"BLG\",\"name\":\"Baling\",\"states\":\"Kedah\"},{\"id\":37,\"code\":\"DGN\",\"name\":\"Dungun\",\"states\":\"Terengganu\"},{\"id\":243,\"code\":\"TPN\",\"name\":\"Tampin\",\"states\":\"Negeri Sembilan\"},{\"id\":100,\"code\":\"MLK\",\"name\":\"Melaka\",\"states\":\"Melaka\"}];<\/script><script>var fromLocationTest =  [{\"id\":23,\"code\":\"BTG\",\"name\":\"Bentong\",\"states\":\"Pahang\"},{\"id\":215,\"code\":\"TBA\",\"name\":\"Taman Bendahara\",\"states\":\"Kelantan\"},{\"id\":69,\"code\":\"KLG\",\"name\":\"Klang\",\"states\":\"Selangor\"},{\"id\":192,\"code\":\"SL\",\"name\":\"Selising\",\"states\":\"Kelantan\"},{\"id\":209,\"code\":\"PMH\",\"name\":\"Pasir Tumboh\",\"states\":\"Kelantan\"},{\"id\":278,\"code\":\"STH\",\"name\":\"SUNGAI TERAH\",\"states\":\"Kelantan\"},{\"id\":315,\"code\":\"CKJ\",\"name\":\"Changkat Jering\",\"states\":\"Perak\"},{\"id\":169,\"code\":\"TIN\",\"name\":\"Teluk Intan\",\"states\":\"Perak\"},{\"id\":132,\"code\":\"RPJG\",\"name\":\"Rantau Panjang\",\"states\":\"Kelantan\"},{\"id\":109,\"code\":\"NLI\",\"name\":\"Nilai\",\"states\":\"Negeri Sembilan\"},{\"id\":89,\"code\":\"KTN\",\"name\":\"Kuantan\",\"states\":\"Pahang\"},{\"id\":338,\"code\":\"TKGS\",\"name\":\"Terminal Kuching Sentral\",\"states\":\"Sarawak\"},{\"id\":195,\"code\":\"GTG\",\"name\":\"Genting Highlands\",\"states\":\"Pahang\"},{\"id\":3,\"code\":\"AS\",\"name\":\"Alor Setar\",\"states\":\"Kedah\"},{\"id\":152,\"code\":\"SKD\",\"name\":\"Skudai\",\"states\":\"Johor\"},{\"id\":295,\"code\":\"SLR\",\"name\":\"Balok(Sungai Ular)\",\"states\":\"Pahang\"},{\"id\":189,\"code\":\"RWG\",\"name\":\"Rawang\",\"states\":\"Selangor\"},{\"id\":335,\"code\":\"SPSK\",\"name\":\"Simpang Saratok\",\"states\":\"Sarawak\"},{\"id\":212,\"code\":\"PMS\",\"name\":\"Permaisuri\",\"states\":\"Terengganu\"},{\"id\":235,\"code\":\"PSA\",\"name\":\"Pokok Sena\",\"states\":\"Kedah\"},{\"id\":172,\"code\":\"TRI\",\"name\":\"Triang\",\"states\":\"Pahang\"},{\"id\":66,\"code\":\"KRT\",\"name\":\"Kertih\",\"states\":\"Terengganu\"},{\"id\":229,\"code\":\"KDK\",\"name\":\"Kadok\",\"states\":\"Kelantan\"},{\"id\":275,\"code\":\"KBH\",\"name\":\"KUALA BALAH\",\"states\":\"Kelantan\"},{\"id\":318,\"code\":\"HUNZ\",\"name\":\"Hospital Unisza\",\"states\":\"Terengganu\"},{\"id\":126,\"code\":\"PTN\",\"name\":\"Pontian\",\"states\":\"Johor\"},{\"id\":26,\"code\":\"BJL\",\"name\":\"Bukit Jalil\",\"states\":\"Kuala Lumpur\"},{\"id\":129,\"code\":\"PCDG\",\"name\":\"Pulai Condong\",\"states\":\"Kelantan\"},{\"id\":106,\"code\":\"MR\",\"name\":\"Muar\",\"states\":\"Johor\"},{\"id\":63,\"code\":\"KMTG\",\"name\":\"Kamunting\",\"states\":\"Perak\"},{\"id\":255,\"code\":\"HGM\",\"name\":\"Hentian Gua Musang\",\"states\":\"Kelantan\"},{\"id\":43,\"code\":\"GRC\",\"name\":\"Guar Chempedak\",\"states\":\"Kedah\"},{\"id\":292,\"code\":\"CLK\",\"name\":\"Chalok\",\"states\":\"Terengganu\"},{\"id\":49,\"code\":\"JPK\",\"name\":\"Jalan Pekeliling\",\"states\":\"Kuala Lumpur\"},{\"id\":298,\"code\":\"SCLK\",\"name\":\"Setiu(Chalok Kedai)\",\"states\":\"Terengganu\"},{\"id\":261,\"code\":\"BT6\",\"name\":\"Batu 6\",\"states\":\"Terengganu\"},{\"id\":238,\"code\":\"KMK\",\"name\":\"Kemasik\",\"states\":\"Terengganu\"},{\"id\":92,\"code\":\"LBS\",\"name\":\"Labis\",\"states\":\"Johor\"},{\"id\":115,\"code\":\"PGDG\",\"name\":\"Pasir Gudang\",\"states\":\"Johor\"},{\"id\":161,\"code\":\"TP\",\"name\":\"Taiping\",\"states\":\"Perak\"},{\"id\":29,\"code\":\"BKP\",\"name\":\"Bukit Payung\",\"states\":\"Terengganu\"},{\"id\":175,\"code\":\"WKFT\",\"name\":\"Wakaf Tapai\",\"states\":\"Terengganu\"},{\"id\":324,\"code\":\"TBG\",\"name\":\"Terminal Bersepadu Gombak\",\"states\":\"Selangor\"},{\"id\":221,\"code\":\"TMK\",\"name\":\"Tanjung Gemok\",\"states\":\"Johor\"},{\"id\":75,\"code\":\"KTT\",\"name\":\"Kota Tinggi\",\"states\":\"Johor\"},{\"id\":344,\"code\":\"OBS\",\"name\":\"Singapore(Oxley Bizhub)\",\"states\":\"Singapore\"},{\"id\":158,\"code\":\"SP\",\"name\":\"Sungai Petani\",\"states\":\"Kedah\"},{\"id\":244,\"code\":\"TAMN\",\"name\":\"Tun Aminah\",\"states\":\"Johor\"},{\"id\":52,\"code\":\"JGK\",\"name\":\"Jengka\",\"states\":\"Pahang\"},{\"id\":95,\"code\":\"LMT\",\"name\":\"Lumut\",\"states\":\"Perak\"},{\"id\":72,\"code\":\"KB\",\"name\":\"Kota Bharu\",\"states\":\"Kelantan\"},{\"id\":118,\"code\":\"PKN\",\"name\":\"Pekan\",\"states\":\"Pahang\"},{\"id\":258,\"code\":\"CRTG\",\"name\":\"Cherating\",\"states\":\"Pahang\"},{\"id\":264,\"code\":\"ISKJ\",\"name\":\"Seri Iskandar(J)\",\"states\":\"Johor\"},{\"id\":281,\"code\":\"LGG\",\"name\":\"LENGGONG\",\"states\":\"Perak\"},{\"id\":78,\"code\":\"KBST\",\"name\":\"Kuala Besut\",\"states\":\"Terengganu\"},{\"id\":218,\"code\":\"UJL\",\"name\":\"UMK Jeli\",\"states\":\"Kelantan\"},{\"id\":327,\"code\":\"MYY\",\"name\":\"Terminal Bas Miri\",\"states\":\"Sarawak\"},{\"id\":321,\"code\":\"USM\",\"name\":\"USM Pulau Pinang\",\"states\":\"Pulau Pinang\"},{\"id\":12,\"code\":\"BSR\",\"name\":\"Bagan Serai\",\"states\":\"Perak\"},{\"id\":178,\"code\":\"NLM\",\"name\":\"Nilam Puri\",\"states\":\"Kelantan\"},{\"id\":35,\"code\":\"CHN\",\"name\":\"Chini\",\"states\":\"Pahang\"},{\"id\":135,\"code\":\"SBM\",\"name\":\"Sabak Bernam\",\"states\":\"Selangor\"},{\"id\":112,\"code\":\"PRP\",\"name\":\"Pantai Remis\",\"states\":\"Perak\"},{\"id\":55,\"code\":\"JTH\",\"name\":\"Jertih\",\"states\":\"Terengganu\"},{\"id\":304,\"code\":\"PBP\",\"name\":\"Paka(Balai Polis)\",\"states\":\"Terengganu\"},{\"id\":241,\"code\":\"TPT\",\"name\":\"Tumpat\",\"states\":\"Kelantan\"},{\"id\":98,\"code\":\"MSI\",\"name\":\"Masai\",\"states\":\"Johor\"},{\"id\":144,\"code\":\"SIK\",\"name\":\"Sik\",\"states\":\"Kedah\"},{\"id\":167,\"code\":\"TKY\",\"name\":\"Tasik Kenyir\",\"states\":\"Terengganu\"},{\"id\":330,\"code\":\"TTU\",\"name\":\"Tatau\",\"states\":\"Sarawak\"},{\"id\":307,\"code\":\"KBKS\",\"name\":\"Kota Bharu - Kota Seri Bong\",\"states\":\"Kelantan\"},{\"id\":230,\"code\":\"BBG\",\"name\":\"Bukit Bunga\",\"states\":\"Kelantan\"},{\"id\":313,\"code\":\"SEC13\",\"name\":\"Seksyen 13 Shah Alam\",\"states\":\"Selangor\"},{\"id\":21,\"code\":\"BG\",\"name\":\"Batu Gajah\",\"states\":\"Perak\"},{\"id\":121,\"code\":\"PG\",\"name\":\"Penang(SG Nibong)\",\"states\":\"Pulau Pinang\"},{\"id\":273,\"code\":\"ARWNA\",\"name\":\"Genting Awana\",\"states\":\"Pahang\"},{\"id\":250,\"code\":\"MRN\",\"name\":\"Maran\",\"states\":\"Pahang\"},{\"id\":58,\"code\":\"JJY\",\"name\":\"Johor Jaya\",\"states\":\"Johor\"},{\"id\":81,\"code\":\"KRI\",\"name\":\"Kuala Krai\",\"states\":\"Kelantan\"},{\"id\":64,\"code\":\"KGR\",\"name\":\"Kangar\",\"states\":\"Perlis\"},{\"id\":207,\"code\":\"LLH\",\"name\":\"Laloh\",\"states\":\"Kelantan\"},{\"id\":44,\"code\":\"GRN\",\"name\":\"Gurun\",\"states\":\"Kedah\"},{\"id\":293,\"code\":\"SGT2\",\"name\":\"Segamat(KFC Tmn Yayasan)\",\"states\":\"Johor\"},{\"id\":141,\"code\":\"ISK\",\"name\":\"Seri Iskandar\",\"states\":\"Perak\"},{\"id\":187,\"code\":\"UTR\",\"name\":\"Ulu Tiram\",\"states\":\"Johor\"},{\"id\":164,\"code\":\"TKRG\",\"name\":\"Tanjung Karang\",\"states\":\"Selangor\"},{\"id\":287,\"code\":\"WTB\",\"name\":\"Wakaf Tengah\",\"states\":\"Terengganu\"},{\"id\":310,\"code\":\"PTLG\",\"name\":\"Pasir Tumboh(SK Long Gafar)\",\"states\":\"Kelantan\"},{\"id\":210,\"code\":\"PHL\",\"name\":\"Pauh Lima\",\"states\":\"Kelantan\"},{\"id\":333,\"code\":\"SBTG\",\"name\":\"Simpang Bintangor\",\"states\":\"Sarawak\"},{\"id\":270,\"code\":\"SMPL\",\"name\":\"Simpang Pulai\",\"states\":\"Perak\"},{\"id\":224,\"code\":\"UMT\",\"name\":\"Universiti Malaysia Terengganu\",\"states\":\"Terengganu\"},{\"id\":124,\"code\":\"PHU\",\"name\":\"Pengkalan Hulu\",\"states\":\"Perak\"},{\"id\":84,\"code\":\"KNR\",\"name\":\"Kuala Nerang\",\"states\":\"Kedah\"},{\"id\":227,\"code\":\"klia2\",\"name\":\"Kuala Lumpur International Airport 2\",\"states\":\"Selangor\"},{\"id\":204,\"code\":\"JLT\",\"name\":\"Jelawat\",\"states\":\"Kelantan\"},{\"id\":61,\"code\":\"KPR\",\"name\":\"Kampar\",\"states\":\"Perak\"},{\"id\":41,\"code\":\"GK\",\"name\":\"Grik\",\"states\":\"Perak\"},{\"id\":290,\"code\":\"PNK\",\"name\":\"Penarik\",\"states\":\"Terengganu\"},{\"id\":247,\"code\":\"PLH\",\"name\":\"Paloh\",\"states\":\"Kelantan\"},{\"id\":213,\"code\":\"CTK\",\"name\":\"PPK Chetok\",\"states\":\"Kelantan\"},{\"id\":336,\"code\":\"SPBG\",\"name\":\"Simpang Betong\",\"states\":\"Sarawak\"},{\"id\":236,\"code\":\"MRG\",\"name\":\"Marang\",\"states\":\"Terengganu\"},{\"id\":259,\"code\":\"CHDRG\",\"name\":\"Chendering\",\"states\":\"Terengganu\"},{\"id\":113,\"code\":\"PBT\",\"name\":\"Parit Buntar\",\"states\":\"Perak\"},{\"id\":27,\"code\":\"BKH\",\"name\":\"Bukit Kayu Hitam\",\"states\":\"Kedah\"},{\"id\":276,\"code\":\"JWG\",\"name\":\"JELAWANG (GUNUNG STONG)\",\"states\":\"Kelantan\"},{\"id\":319,\"code\":\"MYT\",\"name\":\"Mydin Tunjong\",\"states\":\"Kelantan\"},{\"id\":322,\"code\":\"BGO\",\"name\":\"Bagan Datuk\",\"states\":\"Perak\"},{\"id\":173,\"code\":\"ULDU\",\"name\":\"Uitm Lendu\",\"states\":\"Melaka\"},{\"id\":156,\"code\":\"SGB\",\"name\":\"Sungai Besar\",\"states\":\"Selangor\"},{\"id\":130,\"code\":\"PNG\",\"name\":\"Penang\",\"states\":\"Pulau Pinang\"},{\"id\":87,\"code\":\"KRP\",\"name\":\"Kuala Rompin\",\"states\":\"Pahang\"},{\"id\":256,\"code\":\"GUNG\",\"name\":\"Bachok-Gunong\",\"states\":\"Kelantan\"},{\"id\":7,\"code\":\"AHJ\",\"name\":\"Ayer Hitam(J)\",\"states\":\"Johor\"},{\"id\":299,\"code\":\"STO\",\"name\":\"Setiu(sg. Tong)\",\"states\":\"Terengganu\"},{\"id\":342,\"code\":\"SRN\",\"name\":\"Terminal Bas Serian\",\"states\":\"Sarawak\"},{\"id\":150,\"code\":\"WLD\",\"name\":\"Singapore Woodlands\",\"states\":\"Singapore\"},{\"id\":24,\"code\":\"BD\",\"name\":\"Bidor\",\"states\":\"Perak\"},{\"id\":47,\"code\":\"IPH\",\"name\":\"Ipoh\",\"states\":\"Perak\"},{\"id\":70,\"code\":\"KLU\",\"name\":\"Kluang\",\"states\":\"Johor\"},{\"id\":239,\"code\":\"DPM\",\"name\":\"Depo Mutiara\",\"states\":\"Kelantan\"},{\"id\":216,\"code\":\"TKM\",\"name\":\"Teluk Mesira\",\"states\":\"Kelantan\"},{\"id\":233,\"code\":\"SLY\",\"name\":\"Selayang(JPN Gombak)\",\"states\":\"Selangor\"},{\"id\":30,\"code\":\"BTW\",\"name\":\"Butterworth\",\"states\":\"Pulau Pinang\"},{\"id\":279,\"code\":\"ALS\",\"name\":\"Ayer Lanas\",\"states\":\"Kelantan\"},{\"id\":316,\"code\":\"BKM\",\"name\":\"Bukit Merah\",\"states\":\"Perak\"},{\"id\":170,\"code\":\"TLH\",\"name\":\"Temerloh\",\"states\":\"Pahang\"},{\"id\":176,\"code\":\"YP\",\"name\":\"Yong Peng\",\"states\":\"Johor\"},{\"id\":153,\"code\":\"SMNJG\",\"name\":\"Sri Manjung\",\"states\":\"Perak\"},{\"id\":110,\"code\":\"PGH\",\"name\":\"Pagoh\",\"states\":\"Johor\"},{\"id\":10,\"code\":\"ATP\",\"name\":\"Ayer Tawar\",\"states\":\"Perak\"},{\"id\":133,\"code\":\"RAUB\",\"name\":\"Raub\",\"states\":\"Pahang\"},{\"id\":196,\"code\":\"KLIA\",\"name\":\"Kuala Lumpur International Airport\",\"states\":\"Selangor\"},{\"id\":90,\"code\":\"KLA\",\"name\":\"Kulai\",\"states\":\"Johor\"},{\"id\":253,\"code\":\"MEG\",\"name\":\"Mercang\",\"states\":\"Terengganu\"},{\"id\":96,\"code\":\"MCHG\",\"name\":\"Machang\",\"states\":\"Kelantan\"},{\"id\":142,\"code\":\"STWN\",\"name\":\"Sitiawan\",\"states\":\"Perak\"},{\"id\":282,\"code\":\"SBH\",\"name\":\"SUNGAI BULOH\",\"states\":\"Selangor\"},{\"id\":288,\"code\":\"RSA\",\"name\":\"Rusila\",\"states\":\"Terengganu\"},{\"id\":305,\"code\":\"MMEG\",\"name\":\"Marang(Merchang)\",\"states\":\"Terengganu\"},{\"id\":219,\"code\":\"UMP\",\"name\":\"UMP \",\"states\":\"Pahang\"},{\"id\":79,\"code\":\"KKSR\",\"name\":\"Kuala Kangsar\",\"states\":\"Perak\"},{\"id\":328,\"code\":\"BNH\",\"name\":\"Batu Niah\",\"states\":\"Sarawak\"},{\"id\":265,\"code\":\"FWH\",\"name\":\"First World Hotel\",\"states\":\"Pahang\"},{\"id\":179,\"code\":\"KLS\",\"name\":\"KL Sentral\",\"states\":\"Kuala Lumpur\"},{\"id\":205,\"code\":\"KRJ\",\"name\":\"Kg. Raja\",\"states\":\"Terengganu\"},{\"id\":13,\"code\":\"BAH\",\"name\":\"Bahau\",\"states\":\"Negeri Sembilan\"},{\"id\":136,\"code\":\"SGT\",\"name\":\"Segamat\",\"states\":\"Johor\"},{\"id\":242,\"code\":\"WZN\",\"name\":\"Wakaf Zain\",\"states\":\"Kelantan\"},{\"id\":56,\"code\":\"JTR\",\"name\":\"Jitra\",\"states\":\"Kedah\"},{\"id\":199,\"code\":\"DPG\",\"name\":\"Kuala Krai(D.Peladang)\",\"states\":\"Kelantan\"},{\"id\":99,\"code\":\"MT\",\"name\":\"Masjid Tanah\",\"states\":\"Melaka\"},{\"id\":285,\"code\":\"PKG\",\"name\":\"Marang(Pulau Kerengga)\",\"states\":\"Terengganu\"},{\"id\":116,\"code\":\"PMAS\",\"name\":\"Pasir Mas\",\"states\":\"Kelantan\"},{\"id\":139,\"code\":\"SDG\",\"name\":\"Serdang\",\"states\":\"Kedah\"},{\"id\":162,\"code\":\"TMH\",\"name\":\"Tanah Merah\",\"states\":\"Kelantan\"},{\"id\":325,\"code\":\"HOP\",\"name\":\"Hotel Perdana\",\"states\":\"Kelantan\"},{\"id\":122,\"code\":\"PDG\",\"name\":\"Pendang\",\"states\":\"Kedah\"},{\"id\":76,\"code\":\"KROH\",\"name\":\"Kroh\",\"states\":\"Perak\"},{\"id\":202,\"code\":\"CKU\",\"name\":\"Chiku 3\",\"states\":\"Kelantan\"},{\"id\":225,\"code\":\"DNK\",\"name\":\"Danok\",\"states\":\"Thailand\"},{\"id\":33,\"code\":\"CLN\",\"name\":\"Changlun\",\"states\":\"Kedah\"},{\"id\":39,\"code\":\"GPG\",\"name\":\"Gopeng\",\"states\":\"Perak\"},{\"id\":16,\"code\":\"BPR\",\"name\":\"Bandar Penawar\",\"states\":\"Johor\"},{\"id\":182,\"code\":\"JSN\",\"name\":\"Jasin\",\"states\":\"Melaka\"},{\"id\":159,\"code\":\"SGRT\",\"name\":\"Sungai Rengit\",\"states\":\"Johor\"},{\"id\":302,\"code\":\"MKM\",\"name\":\"Kemasik(MesraMall)\",\"states\":\"Terengganu\"},{\"id\":165,\"code\":\"TGM\",\"name\":\"Tanjung Malim\",\"states\":\"Perak\"},{\"id\":211,\"code\":\"PGT\",\"name\":\"Peringat\",\"states\":\"Kelantan\"},{\"id\":188,\"code\":\"PCHG\",\"name\":\"Puchong\",\"states\":\"Selangor\"},{\"id\":311,\"code\":\"TPNG\",\"name\":\"Depo Naza(Tapang)\",\"states\":\"Kelantan\"},{\"id\":334,\"code\":\"SBLT\",\"name\":\"Simpang Bulat\",\"states\":\"Sarawak\"},{\"id\":125,\"code\":\"PKBR\",\"name\":\"Pengkalan Kubor\",\"states\":\"Kelantan\"},{\"id\":65,\"code\":\"KMM\",\"name\":\"Kemaman\",\"states\":\"Terengganu\"},{\"id\":317,\"code\":\"AOP\",\"name\":\"Alor Pongsu\",\"states\":\"Perak\"},{\"id\":171,\"code\":\"KB1\",\"name\":\"Terminal Tesco(kb)\",\"states\":\"Kelantan\"},{\"id\":25,\"code\":\"BKB\",\"name\":\"Bukit Beruntung\",\"states\":\"Selangor\"},{\"id\":271,\"code\":\"CMHG\",\"name\":\"Cameron Highlands\",\"states\":\"Pahang\"},{\"id\":105,\"code\":\"MZS\",\"name\":\"Muadzam Shah\",\"states\":\"Pahang\"},{\"id\":228,\"code\":\"UMC\",\"name\":\"Uitm Machang\",\"states\":\"Kelantan\"},{\"id\":85,\"code\":\"KP\",\"name\":\"Kuala Perlis\",\"states\":\"Perlis\"},{\"id\":62,\"code\":\"KGKH\",\"name\":\"Kampung Koh\",\"states\":\"Perak\"},{\"id\":42,\"code\":\"GMSG\",\"name\":\"Gua Musang\",\"states\":\"Kelantan\"},{\"id\":291,\"code\":\"KBB\",\"name\":\"Bari\",\"states\":\"Terengganu\"},{\"id\":254,\"code\":\"KJL\",\"name\":\"Kijal\",\"states\":\"Terengganu\"},{\"id\":248,\"code\":\"PJL\",\"name\":\"Politeknik Jeli\",\"states\":\"Kelantan\"},{\"id\":148,\"code\":\"SGP\",\"name\":\"Singapore\",\"states\":\"Singapore\"},{\"id\":168,\"code\":\"TBS\",\"name\":\"Terminal Bersepadu Selatan\",\"states\":\"Kuala Lumpur\"},{\"id\":191,\"code\":\"ST\",\"name\":\"Setiu\",\"states\":\"Terengganu\"},{\"id\":331,\"code\":\"SSLG\",\"name\":\"Simpang Selangau\",\"states\":\"Sarawak\"},{\"id\":231,\"code\":\"UNISZA\",\"name\":\"UNISZA\",\"states\":\"Terengganu\"},{\"id\":128,\"code\":\"PDR\",\"name\":\"Puduraya\",\"states\":\"Kuala Lumpur\"},{\"id\":22,\"code\":\"BPT\",\"name\":\"Batu Pahat\",\"states\":\"Johor\"},{\"id\":274,\"code\":\"STGH\",\"name\":\"Simpang Tenggaroh\",\"states\":\"Johor\"},{\"id\":82,\"code\":\"KLI\",\"name\":\"Kuala Lipis\",\"states\":\"Pahang\"},{\"id\":88,\"code\":\"KT\",\"name\":\"Kuala Terengganu\",\"states\":\"Terengganu\"},{\"id\":208,\"code\":\"PCR\",\"name\":\"Panchor\",\"states\":\"Kelantan\"},{\"id\":337,\"code\":\"SJLK\",\"name\":\"Simpang Jelukong\",\"states\":\"Sarawak\"},{\"id\":45,\"code\":\"HDT\",\"name\":\"Hentian Duta\",\"states\":\"Kuala Lumpur\"},{\"id\":294,\"code\":\"KMH\",\"name\":\"Kemahang\",\"states\":\"Kelantan\"},{\"id\":145,\"code\":\"SG\",\"name\":\"Simpang\",\"states\":\"Perak\"},{\"id\":2,\"code\":\"ALG\",\"name\":\"Alor Gajah\",\"states\":\"Melaka\"},{\"id\":48,\"code\":\"IPHMG\",\"name\":\"Ipoh(medan Gopeng)\",\"states\":\"Perak\"},{\"id\":71,\"code\":\"KLNS\",\"name\":\"Kok Lanas\",\"states\":\"Kelantan\"},{\"id\":117,\"code\":\"PTH\",\"name\":\"Pasir Puteh\",\"states\":\"Kelantan\"},{\"id\":240,\"code\":\"GEM\",\"name\":\"Gemas\",\"states\":\"Negeri Sembilan\"},{\"id\":257,\"code\":\"GMC\",\"name\":\"Gemenceh\",\"states\":\"Negeri Sembilan\"},{\"id\":280,\"code\":\"SMP\",\"name\":\"Simpang Taiping\",\"states\":\"Perak\"},{\"id\":31,\"code\":\"CHA\",\"name\":\"Chaah\",\"states\":\"Johor\"},{\"id\":217,\"code\":\"TBL\",\"name\":\"Tok Bali\",\"states\":\"Kelantan\"},{\"id\":154,\"code\":\"SPTR\",\"name\":\"Sri Putri\",\"states\":\"Johor\"},{\"id\":134,\"code\":\"RPN\",\"name\":\"Rompin\",\"states\":\"Pahang\"},{\"id\":11,\"code\":\"BCK\",\"name\":\"Bachok\",\"states\":\"Kelantan\"},{\"id\":111,\"code\":\"PAKA\",\"name\":\"Paka\",\"states\":\"Terengganu\"},{\"id\":54,\"code\":\"JRT\",\"name\":\"Jerantut\",\"states\":\"Pahang\"},{\"id\":303,\"code\":\"IKM\",\"name\":\"Kemasik(IKBN)\",\"states\":\"Terengganu\"},{\"id\":91,\"code\":\"KLM\",\"name\":\"Kulim\",\"states\":\"Kedah\"},{\"id\":214,\"code\":\"PCG\",\"name\":\"Puchong Prima\",\"states\":\"Selangor\"},{\"id\":237,\"code\":\"TMNU\",\"name\":\"Taman U\",\"states\":\"Johor\"},{\"id\":260,\"code\":\"BTS\",\"name\":\"Berjaya Times Square\",\"states\":\"Kuala Lumpur\"},{\"id\":283,\"code\":\"DMAI\",\"name\":\"Damansara Damai\",\"states\":\"Selangor\"},{\"id\":220,\"code\":\"EDU\",\"name\":\"Endau\",\"states\":\"Johor\"},{\"id\":114,\"code\":\"PRJ\",\"name\":\"Parit Raja\",\"states\":\"Johor\"},{\"id\":68,\"code\":\"KTH\",\"name\":\"Ketereh\",\"states\":\"Kelantan\"},{\"id\":277,\"code\":\"MRT\",\"name\":\"MERANTO\",\"states\":\"Kelantan\"},{\"id\":28,\"code\":\"BM\",\"name\":\"Bukit Mertajam\",\"states\":\"Pulau Pinang\"},{\"id\":323,\"code\":\"PLH2\",\"name\":\"Paloh 2\",\"states\":\"Kelantan\"},{\"id\":174,\"code\":\"UUM\",\"name\":\"Uum Sintok\",\"states\":\"Kedah\"},{\"id\":74,\"code\":\"KSS\",\"name\":\"Kota Sarang Semut\",\"states\":\"Kedah\"},{\"id\":320,\"code\":\"UTM\",\"name\":\"UTM Skudai\",\"states\":\"Johor\"},{\"id\":131,\"code\":\"PTJ\",\"name\":\"Putrajaya\",\"states\":\"Kuala Lumpur\"},{\"id\":137,\"code\":\"SKC\",\"name\":\"Sekinchan\",\"states\":\"Selangor\"},{\"id\":51,\"code\":\"JELI\",\"name\":\"Jeli\",\"states\":\"Kelantan\"},{\"id\":300,\"code\":\"MTZ\",\"name\":\"K. Terengganu (Msd Terapung)\",\"states\":\"Terengganu\"},{\"id\":151,\"code\":\"BNLAY\",\"name\":\"Singapore(Boon Lay)\",\"states\":\"Singapore\"},{\"id\":194,\"code\":\"HDY\",\"name\":\"Hatyai\",\"states\":\"Thailand\"},{\"id\":200,\"code\":\"MLR\",\"name\":\"Melor\",\"states\":\"Kelantan\"},{\"id\":343,\"code\":\"JUR\",\"name\":\"Singapore(Jurong East)\",\"states\":\"Singapore\"},{\"id\":309,\"code\":\"KSEL\",\"name\":\"Kuala Selangor\",\"states\":\"Selangor\"},{\"id\":286,\"code\":\"GBL\",\"name\":\"GONG BALAI\",\"states\":\"Terengganu\"},{\"id\":263,\"code\":\"AJIL\",\"name\":\"Ajil\",\"states\":\"Terengganu\"},{\"id\":140,\"code\":\"SBN\",\"name\":\"Seremban\",\"states\":\"Negeri Sembilan\"},{\"id\":163,\"code\":\"TGK\",\"name\":\"Tangkak\",\"states\":\"Johor\"},{\"id\":332,\"code\":\"SBW\",\"name\":\"Terminal Bas Sibu\",\"states\":\"Sarawak\"},{\"id\":77,\"code\":\"KBRG\",\"name\":\"Kuala Berang\",\"states\":\"Terengganu\"},{\"id\":17,\"code\":\"BTR\",\"name\":\"Keratong\",\"states\":\"Pahang\"},{\"id\":326,\"code\":\"SGC\",\"name\":\"Singapore(Grantral Complex)\",\"states\":\"Singapore\"},{\"id\":269,\"code\":\"JLTNG\",\"name\":\"Jelutong\",\"states\":\"Pulau Pinang\"},{\"id\":123,\"code\":\"PCPA\",\"name\":\"Pengkalan Chepa\",\"states\":\"Kelantan\"},{\"id\":60,\"code\":\"KJG\",\"name\":\"Kajang\",\"states\":\"Selangor\"},{\"id\":83,\"code\":\"KL\",\"name\":\"Kuala Lumpur\",\"states\":\"Kuala Lumpur\"},{\"id\":34,\"code\":\"CMR\",\"name\":\"Chemor\",\"states\":\"Perak\"},{\"id\":40,\"code\":\"GWD\",\"name\":\"Greenword\",\"states\":\"Selangor\"},{\"id\":183,\"code\":\"MRLM\",\"name\":\"Merlimau\",\"states\":\"Melaka\"},{\"id\":160,\"code\":\"SSPT\",\"name\":\"Sungai Siput\",\"states\":\"Perak\"},{\"id\":103,\"code\":\"MSG\",\"name\":\"Mersing\",\"states\":\"Johor\"},{\"id\":289,\"code\":\"MER\",\"name\":\"Merang\",\"states\":\"Terengganu\"},{\"id\":97,\"code\":\"MNJG\",\"name\":\"Manjung\",\"states\":\"Perak\"},{\"id\":143,\"code\":\"SA\",\"name\":\"Shah Alam\",\"states\":\"Selangor\"},{\"id\":120,\"code\":\"PGK\",\"name\":\"Penang(komtar)\",\"states\":\"Pulau Pinang\"},{\"id\":166,\"code\":\"TPH\",\"name\":\"Tapah\",\"states\":\"Perak\"},{\"id\":329,\"code\":\"BTU\",\"name\":\"Terminal Bas Bintulu\",\"states\":\"Sarawak\"},{\"id\":80,\"code\":\"KTL\",\"name\":\"Kuala Ketil\",\"states\":\"Kedah\"},{\"id\":57,\"code\":\"JB\",\"name\":\"Johor Bahru\",\"states\":\"Johor\"},{\"id\":206,\"code\":\"KKN\",\"name\":\"Kubang Kerian\",\"states\":\"Kelantan\"},{\"id\":14,\"code\":\"BLG\",\"name\":\"Baling\",\"states\":\"Kedah\"},{\"id\":37,\"code\":\"DGN\",\"name\":\"Dungun\",\"states\":\"Terengganu\"},{\"id\":243,\"code\":\"TPN\",\"name\":\"Tampin\",\"states\":\"Negeri Sembilan\"},{\"id\":100,\"code\":\"MLK\",\"name\":\"Melaka\",\"states\":\"Melaka\"}];<\/script><script>var fromLocationTrip =  [{\"id\":23,\"code\":\"BTG\",\"name\":\"Bentong\",\"states\":\"Pahang\"},{\"id\":215,\"code\":\"TBA\",\"name\":\"Taman Bendahara\",\"states\":\"Kelantan\"},{\"id\":69,\"code\":\"KLG\",\"name\":\"Klang\",\"states\":\"Selangor\"},{\"id\":192,\"code\":\"SL\",\"name\":\"Selising\",\"states\":\"Kelantan\"},{\"id\":209,\"code\":\"PMH\",\"name\":\"Pasir Tumboh\",\"states\":\"Kelantan\"},{\"id\":278,\"code\":\"STH\",\"name\":\"SUNGAI TERAH\",\"states\":\"Kelantan\"},{\"id\":315,\"code\":\"CKJ\",\"name\":\"Changkat Jering\",\"states\":\"Perak\"},{\"id\":169,\"code\":\"TIN\",\"name\":\"Teluk Intan\",\"states\":\"Perak\"},{\"id\":132,\"code\":\"RPJG\",\"name\":\"Rantau Panjang\",\"states\":\"Kelantan\"},{\"id\":109,\"code\":\"NLI\",\"name\":\"Nilai\",\"states\":\"Negeri Sembilan\"},{\"id\":89,\"code\":\"KTN\",\"name\":\"Kuantan\",\"states\":\"Pahang\"},{\"id\":338,\"code\":\"TKGS\",\"name\":\"Terminal Kuching Sentral\",\"states\":\"Sarawak\"},{\"id\":195,\"code\":\"GTG\",\"name\":\"Genting Highlands\",\"states\":\"Pahang\"},{\"id\":3,\"code\":\"AS\",\"name\":\"Alor Setar\",\"states\":\"Kedah\"},{\"id\":152,\"code\":\"SKD\",\"name\":\"Skudai\",\"states\":\"Johor\"},{\"id\":295,\"code\":\"SLR\",\"name\":\"Balok(Sungai Ular)\",\"states\":\"Pahang\"},{\"id\":189,\"code\":\"RWG\",\"name\":\"Rawang\",\"states\":\"Selangor\"},{\"id\":335,\"code\":\"SPSK\",\"name\":\"Simpang Saratok\",\"states\":\"Sarawak\"},{\"id\":212,\"code\":\"PMS\",\"name\":\"Permaisuri\",\"states\":\"Terengganu\"},{\"id\":235,\"code\":\"PSA\",\"name\":\"Pokok Sena\",\"states\":\"Kedah\"},{\"id\":172,\"code\":\"TRI\",\"name\":\"Triang\",\"states\":\"Pahang\"},{\"id\":66,\"code\":\"KRT\",\"name\":\"Kertih\",\"states\":\"Terengganu\"},{\"id\":229,\"code\":\"KDK\",\"name\":\"Kadok\",\"states\":\"Kelantan\"},{\"id\":275,\"code\":\"KBH\",\"name\":\"KUALA BALAH\",\"states\":\"Kelantan\"},{\"id\":318,\"code\":\"HUNZ\",\"name\":\"Hospital Unisza\",\"states\":\"Terengganu\"},{\"id\":126,\"code\":\"PTN\",\"name\":\"Pontian\",\"states\":\"Johor\"},{\"id\":26,\"code\":\"BJL\",\"name\":\"Bukit Jalil\",\"states\":\"Kuala Lumpur\"},{\"id\":129,\"code\":\"PCDG\",\"name\":\"Pulai Condong\",\"states\":\"Kelantan\"},{\"id\":106,\"code\":\"MR\",\"name\":\"Muar\",\"states\":\"Johor\"},{\"id\":63,\"code\":\"KMTG\",\"name\":\"Kamunting\",\"states\":\"Perak\"},{\"id\":255,\"code\":\"HGM\",\"name\":\"Hentian Gua Musang\",\"states\":\"Kelantan\"},{\"id\":43,\"code\":\"GRC\",\"name\":\"Guar Chempedak\",\"states\":\"Kedah\"},{\"id\":292,\"code\":\"CLK\",\"name\":\"Chalok\",\"states\":\"Terengganu\"},{\"id\":49,\"code\":\"JPK\",\"name\":\"Jalan Pekeliling\",\"states\":\"Kuala Lumpur\"},{\"id\":298,\"code\":\"SCLK\",\"name\":\"Setiu(Chalok Kedai)\",\"states\":\"Terengganu\"},{\"id\":261,\"code\":\"BT6\",\"name\":\"Batu 6\",\"states\":\"Terengganu\"},{\"id\":238,\"code\":\"KMK\",\"name\":\"Kemasik\",\"states\":\"Terengganu\"},{\"id\":92,\"code\":\"LBS\",\"name\":\"Labis\",\"states\":\"Johor\"},{\"id\":115,\"code\":\"PGDG\",\"name\":\"Pasir Gudang\",\"states\":\"Johor\"},{\"id\":161,\"code\":\"TP\",\"name\":\"Taiping\",\"states\":\"Perak\"},{\"id\":29,\"code\":\"BKP\",\"name\":\"Bukit Payung\",\"states\":\"Terengganu\"},{\"id\":175,\"code\":\"WKFT\",\"name\":\"Wakaf Tapai\",\"states\":\"Terengganu\"},{\"id\":324,\"code\":\"TBG\",\"name\":\"Terminal Bersepadu Gombak\",\"states\":\"Selangor\"},{\"id\":221,\"code\":\"TMK\",\"name\":\"Tanjung Gemok\",\"states\":\"Johor\"},{\"id\":75,\"code\":\"KTT\",\"name\":\"Kota Tinggi\",\"states\":\"Johor\"},{\"id\":344,\"code\":\"OBS\",\"name\":\"Singapore(Oxley Bizhub)\",\"states\":\"Singapore\"},{\"id\":158,\"code\":\"SP\",\"name\":\"Sungai Petani\",\"states\":\"Kedah\"},{\"id\":244,\"code\":\"TAMN\",\"name\":\"Tun Aminah\",\"states\":\"Johor\"},{\"id\":52,\"code\":\"JGK\",\"name\":\"Jengka\",\"states\":\"Pahang\"},{\"id\":95,\"code\":\"LMT\",\"name\":\"Lumut\",\"states\":\"Perak\"},{\"id\":72,\"code\":\"KB\",\"name\":\"Kota Bharu\",\"states\":\"Kelantan\"},{\"id\":118,\"code\":\"PKN\",\"name\":\"Pekan\",\"states\":\"Pahang\"},{\"id\":258,\"code\":\"CRTG\",\"name\":\"Cherating\",\"states\":\"Pahang\"},{\"id\":264,\"code\":\"ISKJ\",\"name\":\"Seri Iskandar(J)\",\"states\":\"Johor\"},{\"id\":281,\"code\":\"LGG\",\"name\":\"LENGGONG\",\"states\":\"Perak\"},{\"id\":78,\"code\":\"KBST\",\"name\":\"Kuala Besut\",\"states\":\"Terengganu\"},{\"id\":218,\"code\":\"UJL\",\"name\":\"UMK Jeli\",\"states\":\"Kelantan\"},{\"id\":327,\"code\":\"MYY\",\"name\":\"Terminal Bas Miri\",\"states\":\"Sarawak\"},{\"id\":321,\"code\":\"USM\",\"name\":\"USM Pulau Pinang\",\"states\":\"Pulau Pinang\"},{\"id\":12,\"code\":\"BSR\",\"name\":\"Bagan Serai\",\"states\":\"Perak\"},{\"id\":178,\"code\":\"NLM\",\"name\":\"Nilam Puri\",\"states\":\"Kelantan\"},{\"id\":35,\"code\":\"CHN\",\"name\":\"Chini\",\"states\":\"Pahang\"},{\"id\":135,\"code\":\"SBM\",\"name\":\"Sabak Bernam\",\"states\":\"Selangor\"},{\"id\":112,\"code\":\"PRP\",\"name\":\"Pantai Remis\",\"states\":\"Perak\"},{\"id\":55,\"code\":\"JTH\",\"name\":\"Jertih\",\"states\":\"Terengganu\"},{\"id\":304,\"code\":\"PBP\",\"name\":\"Paka(Balai Polis)\",\"states\":\"Terengganu\"},{\"id\":241,\"code\":\"TPT\",\"name\":\"Tumpat\",\"states\":\"Kelantan\"},{\"id\":98,\"code\":\"MSI\",\"name\":\"Masai\",\"states\":\"Johor\"},{\"id\":144,\"code\":\"SIK\",\"name\":\"Sik\",\"states\":\"Kedah\"},{\"id\":167,\"code\":\"TKY\",\"name\":\"Tasik Kenyir\",\"states\":\"Terengganu\"},{\"id\":330,\"code\":\"TTU\",\"name\":\"Tatau\",\"states\":\"Sarawak\"},{\"id\":307,\"code\":\"KBKS\",\"name\":\"Kota Bharu - Kota Seri Bong\",\"states\":\"Kelantan\"},{\"id\":230,\"code\":\"BBG\",\"name\":\"Bukit Bunga\",\"states\":\"Kelantan\"},{\"id\":313,\"code\":\"SEC13\",\"name\":\"Seksyen 13 Shah Alam\",\"states\":\"Selangor\"},{\"id\":21,\"code\":\"BG\",\"name\":\"Batu Gajah\",\"states\":\"Perak\"},{\"id\":121,\"code\":\"PG\",\"name\":\"Penang(SG Nibong)\",\"states\":\"Pulau Pinang\"},{\"id\":273,\"code\":\"ARWNA\",\"name\":\"Genting Awana\",\"states\":\"Pahang\"},{\"id\":250,\"code\":\"MRN\",\"name\":\"Maran\",\"states\":\"Pahang\"},{\"id\":58,\"code\":\"JJY\",\"name\":\"Johor Jaya\",\"states\":\"Johor\"},{\"id\":81,\"code\":\"KRI\",\"name\":\"Kuala Krai\",\"states\":\"Kelantan\"},{\"id\":64,\"code\":\"KGR\",\"name\":\"Kangar\",\"states\":\"Perlis\"},{\"id\":207,\"code\":\"LLH\",\"name\":\"Laloh\",\"states\":\"Kelantan\"},{\"id\":44,\"code\":\"GRN\",\"name\":\"Gurun\",\"states\":\"Kedah\"},{\"id\":293,\"code\":\"SGT2\",\"name\":\"Segamat(KFC Tmn Yayasan)\",\"states\":\"Johor\"},{\"id\":141,\"code\":\"ISK\",\"name\":\"Seri Iskandar\",\"states\":\"Perak\"},{\"id\":187,\"code\":\"UTR\",\"name\":\"Ulu Tiram\",\"states\":\"Johor\"},{\"id\":164,\"code\":\"TKRG\",\"name\":\"Tanjung Karang\",\"states\":\"Selangor\"},{\"id\":287,\"code\":\"WTB\",\"name\":\"Wakaf Tengah\",\"states\":\"Terengganu\"},{\"id\":310,\"code\":\"PTLG\",\"name\":\"Pasir Tumboh(SK Long Gafar)\",\"states\":\"Kelantan\"},{\"id\":210,\"code\":\"PHL\",\"name\":\"Pauh Lima\",\"states\":\"Kelantan\"},{\"id\":333,\"code\":\"SBTG\",\"name\":\"Simpang Bintangor\",\"states\":\"Sarawak\"},{\"id\":270,\"code\":\"SMPL\",\"name\":\"Simpang Pulai\",\"states\":\"Perak\"},{\"id\":224,\"code\":\"UMT\",\"name\":\"Universiti Malaysia Terengganu\",\"states\":\"Terengganu\"},{\"id\":124,\"code\":\"PHU\",\"name\":\"Pengkalan Hulu\",\"states\":\"Perak\"},{\"id\":84,\"code\":\"KNR\",\"name\":\"Kuala Nerang\",\"states\":\"Kedah\"},{\"id\":227,\"code\":\"klia2\",\"name\":\"Kuala Lumpur International Airport 2\",\"states\":\"Selangor\"},{\"id\":204,\"code\":\"JLT\",\"name\":\"Jelawat\",\"states\":\"Kelantan\"},{\"id\":61,\"code\":\"KPR\",\"name\":\"Kampar\",\"states\":\"Perak\"},{\"id\":41,\"code\":\"GK\",\"name\":\"Grik\",\"states\":\"Perak\"},{\"id\":290,\"code\":\"PNK\",\"name\":\"Penarik\",\"states\":\"Terengganu\"},{\"id\":247,\"code\":\"PLH\",\"name\":\"Paloh\",\"states\":\"Kelantan\"},{\"id\":213,\"code\":\"CTK\",\"name\":\"PPK Chetok\",\"states\":\"Kelantan\"},{\"id\":336,\"code\":\"SPBG\",\"name\":\"Simpang Betong\",\"states\":\"Sarawak\"},{\"id\":236,\"code\":\"MRG\",\"name\":\"Marang\",\"states\":\"Terengganu\"},{\"id\":259,\"code\":\"CHDRG\",\"name\":\"Chendering\",\"states\":\"Terengganu\"},{\"id\":113,\"code\":\"PBT\",\"name\":\"Parit Buntar\",\"states\":\"Perak\"},{\"id\":27,\"code\":\"BKH\",\"name\":\"Bukit Kayu Hitam\",\"states\":\"Kedah\"},{\"id\":276,\"code\":\"JWG\",\"name\":\"JELAWANG (GUNUNG STONG)\",\"states\":\"Kelantan\"},{\"id\":319,\"code\":\"MYT\",\"name\":\"Mydin Tunjong\",\"states\":\"Kelantan\"},{\"id\":322,\"code\":\"BGO\",\"name\":\"Bagan Datuk\",\"states\":\"Perak\"},{\"id\":173,\"code\":\"ULDU\",\"name\":\"Uitm Lendu\",\"states\":\"Melaka\"},{\"id\":156,\"code\":\"SGB\",\"name\":\"Sungai Besar\",\"states\":\"Selangor\"},{\"id\":130,\"code\":\"PNG\",\"name\":\"Penang\",\"states\":\"Pulau Pinang\"},{\"id\":87,\"code\":\"KRP\",\"name\":\"Kuala Rompin\",\"states\":\"Pahang\"},{\"id\":256,\"code\":\"GUNG\",\"name\":\"Bachok-Gunong\",\"states\":\"Kelantan\"},{\"id\":7,\"code\":\"AHJ\",\"name\":\"Ayer Hitam(J)\",\"states\":\"Johor\"},{\"id\":299,\"code\":\"STO\",\"name\":\"Setiu(sg. Tong)\",\"states\":\"Terengganu\"},{\"id\":342,\"code\":\"SRN\",\"name\":\"Terminal Bas Serian\",\"states\":\"Sarawak\"},{\"id\":150,\"code\":\"WLD\",\"name\":\"Singapore Woodlands\",\"states\":\"Singapore\"},{\"id\":24,\"code\":\"BD\",\"name\":\"Bidor\",\"states\":\"Perak\"},{\"id\":47,\"code\":\"IPH\",\"name\":\"Ipoh\",\"states\":\"Perak\"},{\"id\":70,\"code\":\"KLU\",\"name\":\"Kluang\",\"states\":\"Johor\"},{\"id\":239,\"code\":\"DPM\",\"name\":\"Depo Mutiara\",\"states\":\"Kelantan\"},{\"id\":216,\"code\":\"TKM\",\"name\":\"Teluk Mesira\",\"states\":\"Kelantan\"},{\"id\":233,\"code\":\"SLY\",\"name\":\"Selayang(JPN Gombak)\",\"states\":\"Selangor\"},{\"id\":30,\"code\":\"BTW\",\"name\":\"Butterworth\",\"states\":\"Pulau Pinang\"},{\"id\":279,\"code\":\"ALS\",\"name\":\"Ayer Lanas\",\"states\":\"Kelantan\"},{\"id\":316,\"code\":\"BKM\",\"name\":\"Bukit Merah\",\"states\":\"Perak\"},{\"id\":170,\"code\":\"TLH\",\"name\":\"Temerloh\",\"states\":\"Pahang\"},{\"id\":176,\"code\":\"YP\",\"name\":\"Yong Peng\",\"states\":\"Johor\"},{\"id\":153,\"code\":\"SMNJG\",\"name\":\"Sri Manjung\",\"states\":\"Perak\"},{\"id\":110,\"code\":\"PGH\",\"name\":\"Pagoh\",\"states\":\"Johor\"},{\"id\":10,\"code\":\"ATP\",\"name\":\"Ayer Tawar\",\"states\":\"Perak\"},{\"id\":133,\"code\":\"RAUB\",\"name\":\"Raub\",\"states\":\"Pahang\"},{\"id\":196,\"code\":\"KLIA\",\"name\":\"Kuala Lumpur International Airport\",\"states\":\"Selangor\"},{\"id\":90,\"code\":\"KLA\",\"name\":\"Kulai\",\"states\":\"Johor\"},{\"id\":253,\"code\":\"MEG\",\"name\":\"Mercang\",\"states\":\"Terengganu\"},{\"id\":96,\"code\":\"MCHG\",\"name\":\"Machang\",\"states\":\"Kelantan\"},{\"id\":142,\"code\":\"STWN\",\"name\":\"Sitiawan\",\"states\":\"Perak\"},{\"id\":282,\"code\":\"SBH\",\"name\":\"SUNGAI BULOH\",\"states\":\"Selangor\"},{\"id\":288,\"code\":\"RSA\",\"name\":\"Rusila\",\"states\":\"Terengganu\"},{\"id\":305,\"code\":\"MMEG\",\"name\":\"Marang(Merchang)\",\"states\":\"Terengganu\"},{\"id\":219,\"code\":\"UMP\",\"name\":\"UMP\",\"states\":\"Pahang\"},{\"id\":79,\"code\":\"KKSR\",\"name\":\"Kuala Kangsar\",\"states\":\"Perak\"},{\"id\":328,\"code\":\"BNH\",\"name\":\"Batu Niah\",\"states\":\"Sarawak\"},{\"id\":265,\"code\":\"FWH\",\"name\":\"First World Hotel\",\"states\":\"Pahang\"},{\"id\":179,\"code\":\"KLS\",\"name\":\"KL Sentral\",\"states\":\"Kuala Lumpur\"},{\"id\":205,\"code\":\"KRJ\",\"name\":\"Kg. Raja\",\"states\":\"Terengganu\"},{\"id\":13,\"code\":\"BAH\",\"name\":\"Bahau\",\"states\":\"Negeri Sembilan\"},{\"id\":136,\"code\":\"SGT\",\"name\":\"Segamat\",\"states\":\"Johor\"},{\"id\":242,\"code\":\"WZN\",\"name\":\"Wakaf Zain\",\"states\":\"Kelantan\"},{\"id\":56,\"code\":\"JTR\",\"name\":\"Jitra\",\"states\":\"Kedah\"},{\"id\":199,\"code\":\"DPG\",\"name\":\"Kuala Krai(D.Peladang)\",\"states\":\"Kelantan\"},{\"id\":99,\"code\":\"MT\",\"name\":\"Masjid Tanah\",\"states\":\"Melaka\"},{\"id\":285,\"code\":\"PKG\",\"name\":\"Marang(Pulau Kerengga)\",\"states\":\"Terengganu\"},{\"id\":116,\"code\":\"PMAS\",\"name\":\"Pasir Mas\",\"states\":\"Kelantan\"},{\"id\":139,\"code\":\"SDG\",\"name\":\"Serdang\",\"states\":\"Kedah\"},{\"id\":162,\"code\":\"TMH\",\"name\":\"Tanah Merah\",\"states\":\"Kelantan\"},{\"id\":325,\"code\":\"HOP\",\"name\":\"Hotel Perdana\",\"states\":\"Kelantan\"},{\"id\":122,\"code\":\"PDG\",\"name\":\"Pendang\",\"states\":\"Kedah\"},{\"id\":76,\"code\":\"KROH\",\"name\":\"Kroh\",\"states\":\"Perak\"},{\"id\":202,\"code\":\"CKU\",\"name\":\"Chiku 3\",\"states\":\"Kelantan\"},{\"id\":225,\"code\":\"DNK\",\"name\":\"Danok\",\"states\":\"Thailand\"},{\"id\":33,\"code\":\"CLN\",\"name\":\"Changlun\",\"states\":\"Kedah\"},{\"id\":39,\"code\":\"GPG\",\"name\":\"Gopeng\",\"states\":\"Perak\"},{\"id\":16,\"code\":\"BPR\",\"name\":\"Bandar Penawar\",\"states\":\"Johor\"},{\"id\":182,\"code\":\"JSN\",\"name\":\"Jasin\",\"states\":\"Melaka\"},{\"id\":159,\"code\":\"SGRT\",\"name\":\"Sungai Rengit\",\"states\":\"Johor\"},{\"id\":302,\"code\":\"MKM\",\"name\":\"Kemasik(MesraMall)\",\"states\":\"Terengganu\"},{\"id\":165,\"code\":\"TGM\",\"name\":\"Tanjung Malim\",\"states\":\"Perak\"},{\"id\":211,\"code\":\"PGT\",\"name\":\"Peringat\",\"states\":\"Kelantan\"},{\"id\":188,\"code\":\"PCHG\",\"name\":\"Puchong\",\"states\":\"Selangor\"},{\"id\":311,\"code\":\"TPNG\",\"name\":\"Depo Naza(Tapang)\",\"states\":\"Kelantan\"},{\"id\":334,\"code\":\"SBLT\",\"name\":\"Simpang Bulat\",\"states\":\"Sarawak\"},{\"id\":125,\"code\":\"PKBR\",\"name\":\"Pengkalan Kubor\",\"states\":\"Kelantan\"},{\"id\":65,\"code\":\"KMM\",\"name\":\"Kemaman\",\"states\":\"Terengganu\"},{\"id\":317,\"code\":\"AOP\",\"name\":\"Alor Pongsu\",\"states\":\"Perak\"},{\"id\":171,\"code\":\"KB1\",\"name\":\"Terminal Tesco(kb)\",\"states\":\"Kelantan\"},{\"id\":25,\"code\":\"BKB\",\"name\":\"Bukit Beruntung\",\"states\":\"Selangor\"},{\"id\":271,\"code\":\"CMHG\",\"name\":\"Cameron Highlands\",\"states\":\"Pahang\"},{\"id\":105,\"code\":\"MZS\",\"name\":\"Muadzam Shah\",\"states\":\"Pahang\"},{\"id\":228,\"code\":\"UMC\",\"name\":\"Uitm Machang\",\"states\":\"Kelantan\"},{\"id\":85,\"code\":\"KP\",\"name\":\"Kuala Perlis\",\"states\":\"Perlis\"},{\"id\":62,\"code\":\"KGKH\",\"name\":\"Kampung Koh\",\"states\":\"Perak\"},{\"id\":42,\"code\":\"GMSG\",\"name\":\"Gua Musang\",\"states\":\"Kelantan\"},{\"id\":291,\"code\":\"KBB\",\"name\":\"Bari\",\"states\":\"Terengganu\"},{\"id\":254,\"code\":\"KJL\",\"name\":\"Kijal\",\"states\":\"Terengganu\"},{\"id\":248,\"code\":\"PJL\",\"name\":\"Politeknik Jeli\",\"states\":\"Kelantan\"},{\"id\":148,\"code\":\"SGP\",\"name\":\"Singapore\",\"states\":\"Singapore\"},{\"id\":168,\"code\":\"TBS\",\"name\":\"Terminal Bersepadu Selatan\",\"states\":\"Kuala Lumpur\"},{\"id\":191,\"code\":\"ST\",\"name\":\"Setiu\",\"states\":\"Terengganu\"},{\"id\":331,\"code\":\"SSLG\",\"name\":\"Simpang Selangau\",\"states\":\"Sarawak\"},{\"id\":231,\"code\":\"UNISZA\",\"name\":\"UNISZA\",\"states\":\"Terengganu\"},{\"id\":128,\"code\":\"PDR\",\"name\":\"Puduraya\",\"states\":\"Kuala Lumpur\"},{\"id\":22,\"code\":\"BPT\",\"name\":\"Batu Pahat\",\"states\":\"Johor\"},{\"id\":274,\"code\":\"STGH\",\"name\":\"Simpang Tenggaroh\",\"states\":\"Johor\"},{\"id\":82,\"code\":\"KLI\",\"name\":\"Kuala Lipis\",\"states\":\"Pahang\"},{\"id\":88,\"code\":\"KT\",\"name\":\"Kuala Terengganu\",\"states\":\"Terengganu\"},{\"id\":208,\"code\":\"PCR\",\"name\":\"Panchor\",\"states\":\"Kelantan\"},{\"id\":337,\"code\":\"SJLK\",\"name\":\"Simpang Jelukong\",\"states\":\"Sarawak\"},{\"id\":45,\"code\":\"HDT\",\"name\":\"Hentian Duta\",\"states\":\"Kuala Lumpur\"},{\"id\":294,\"code\":\"KMH\",\"name\":\"Kemahang\",\"states\":\"Kelantan\"},{\"id\":145,\"code\":\"SG\",\"name\":\"Simpang\",\"states\":\"Perak\"},{\"id\":2,\"code\":\"ALG\",\"name\":\"Alor Gajah\",\"states\":\"Melaka\"},{\"id\":48,\"code\":\"IPHMG\",\"name\":\"Ipoh(medan Gopeng)\",\"states\":\"Perak\"},{\"id\":71,\"code\":\"KLNS\",\"name\":\"Kok Lanas\",\"states\":\"Kelantan\"},{\"id\":117,\"code\":\"PTH\",\"name\":\"Pasir Puteh\",\"states\":\"Kelantan\"},{\"id\":240,\"code\":\"GEM\",\"name\":\"Gemas\",\"states\":\"Negeri Sembilan\"},{\"id\":257,\"code\":\"GMC\",\"name\":\"Gemenceh\",\"states\":\"Negeri Sembilan\"},{\"id\":280,\"code\":\"SMP\",\"name\":\"Simpang Taiping\",\"states\":\"Perak\"},{\"id\":31,\"code\":\"CHA\",\"name\":\"Chaah\",\"states\":\"Johor\"},{\"id\":217,\"code\":\"TBL\",\"name\":\"Tok Bali\",\"states\":\"Kelantan\"},{\"id\":154,\"code\":\"SPTR\",\"name\":\"Sri Putri\",\"states\":\"Johor\"},{\"id\":134,\"code\":\"RPN\",\"name\":\"Rompin\",\"states\":\"Pahang\"},{\"id\":11,\"code\":\"BCK\",\"name\":\"Bachok\",\"states\":\"Kelantan\"},{\"id\":111,\"code\":\"PAKA\",\"name\":\"Paka\",\"states\":\"Terengganu\"},{\"id\":54,\"code\":\"JRT\",\"name\":\"Jerantut\",\"states\":\"Pahang\"},{\"id\":303,\"code\":\"IKM\",\"name\":\"Kemasik(IKBN)\",\"states\":\"Terengganu\"},{\"id\":91,\"code\":\"KLM\",\"name\":\"Kulim\",\"states\":\"Kedah\"},{\"id\":214,\"code\":\"PCG\",\"name\":\"Puchong Prima\",\"states\":\"Selangor\"},{\"id\":237,\"code\":\"TMNU\",\"name\":\"Taman U\",\"states\":\"Johor\"},{\"id\":260,\"code\":\"BTS\",\"name\":\"Berjaya Times Square\",\"states\":\"Kuala Lumpur\"},{\"id\":283,\"code\":\"DMAI\",\"name\":\"Damansara Damai\",\"states\":\"Selangor\"},{\"id\":220,\"code\":\"EDU\",\"name\":\"Endau\",\"states\":\"Johor\"},{\"id\":114,\"code\":\"PRJ\",\"name\":\"Parit Raja\",\"states\":\"Johor\"},{\"id\":68,\"code\":\"KTH\",\"name\":\"Ketereh\",\"states\":\"Kelantan\"},{\"id\":277,\"code\":\"MRT\",\"name\":\"MERANTO\",\"states\":\"Kelantan\"},{\"id\":28,\"code\":\"BM\",\"name\":\"Bukit Mertajam\",\"states\":\"Pulau Pinang\"},{\"id\":323,\"code\":\"PLH2\",\"name\":\"Paloh 2\",\"states\":\"Kelantan\"},{\"id\":174,\"code\":\"UUM\",\"name\":\"Uum Sintok\",\"states\":\"Kedah\"},{\"id\":74,\"code\":\"KSS\",\"name\":\"Kota Sarang Semut\",\"states\":\"Kedah\"},{\"id\":320,\"code\":\"UTM\",\"name\":\"UTM Skudai\",\"states\":\"Johor\"},{\"id\":131,\"code\":\"PTJ\",\"name\":\"Putrajaya\",\"states\":\"Kuala Lumpur\"},{\"id\":137,\"code\":\"SKC\",\"name\":\"Sekinchan\",\"states\":\"Selangor\"},{\"id\":51,\"code\":\"JELI\",\"name\":\"Jeli\",\"states\":\"Kelantan\"},{\"id\":300,\"code\":\"MTZ\",\"name\":\"K. Terengganu (Msd Terapung)\",\"states\":\"Terengganu\"},{\"id\":151,\"code\":\"BNLAY\",\"name\":\"Singapore(Boon Lay)\",\"states\":\"Singapore\"},{\"id\":194,\"code\":\"HDY\",\"name\":\"Hatyai\",\"states\":\"Thailand\"},{\"id\":200,\"code\":\"MLR\",\"name\":\"Melor\",\"states\":\"Kelantan\"},{\"id\":343,\"code\":\"JUR\",\"name\":\"Singapore(Jurong East)\",\"states\":\"Singapore\"},{\"id\":309,\"code\":\"KSEL\",\"name\":\"Kuala Selangor\",\"states\":\"Selangor\"},{\"id\":286,\"code\":\"GBL\",\"name\":\"GONG BALAI\",\"states\":\"Terengganu\"},{\"id\":263,\"code\":\"AJIL\",\"name\":\"Ajil\",\"states\":\"Terengganu\"},{\"id\":140,\"code\":\"SBN\",\"name\":\"Seremban\",\"states\":\"Negeri Sembilan\"},{\"id\":163,\"code\":\"TGK\",\"name\":\"Tangkak\",\"states\":\"Johor\"},{\"id\":332,\"code\":\"SBW\",\"name\":\"Terminal Bas Sibu\",\"states\":\"Sarawak\"},{\"id\":77,\"code\":\"KBRG\",\"name\":\"Kuala Berang\",\"states\":\"Terengganu\"},{\"id\":17,\"code\":\"BTR\",\"name\":\"Keratong\",\"states\":\"Pahang\"},{\"id\":326,\"code\":\"SGC\",\"name\":\"Singapore(Grantral Complex)\",\"states\":\"Singapore\"},{\"id\":269,\"code\":\"JLTNG\",\"name\":\"Jelutong\",\"states\":\"Pulau Pinang\"},{\"id\":123,\"code\":\"PCPA\",\"name\":\"Pengkalan Chepa\",\"states\":\"Kelantan\"},{\"id\":60,\"code\":\"KJG\",\"name\":\"Kajang\",\"states\":\"Selangor\"},{\"id\":83,\"code\":\"KL\",\"name\":\"Kuala Lumpur\",\"states\":\"Kuala Lumpur\"},{\"id\":34,\"code\":\"CMR\",\"name\":\"Chemor\",\"states\":\"Perak\"},{\"id\":40,\"code\":\"GWD\",\"name\":\"Greenword\",\"states\":\"Selangor\"},{\"id\":183,\"code\":\"MRLM\",\"name\":\"Merlimau\",\"states\":\"Melaka\"},{\"id\":160,\"code\":\"SSPT\",\"name\":\"Sungai Siput\",\"states\":\"Perak\"},{\"id\":103,\"code\":\"MSG\",\"name\":\"Mersing\",\"states\":\"Johor\"},{\"id\":289,\"code\":\"MER\",\"name\":\"Merang\",\"states\":\"Terengganu\"},{\"id\":97,\"code\":\"MNJG\",\"name\":\"Manjung\",\"states\":\"Perak\"},{\"id\":143,\"code\":\"SA\",\"name\":\"Shah Alam\",\"states\":\"Selangor\"},{\"id\":120,\"code\":\"PGK\",\"name\":\"Penang(komtar)\",\"states\":\"Pulau Pinang\"},{\"id\":166,\"code\":\"TPH\",\"name\":\"Tapah\",\"states\":\"Perak\"},{\"id\":329,\"code\":\"BTU\",\"name\":\"Terminal Bas Bintulu\",\"states\":\"Sarawak\"},{\"id\":80,\"code\":\"KTL\",\"name\":\"Kuala Ketil\",\"states\":\"Kedah\"},{\"id\":57,\"code\":\"JB\",\"name\":\"Johor Bahru\",\"states\":\"Johor\"},{\"id\":206,\"code\":\"KKN\",\"name\":\"Kubang Kerian\",\"states\":\"Kelantan\"},{\"id\":14,\"code\":\"BLG\",\"name\":\"Baling\",\"states\":\"Kedah\"},{\"id\":37,\"code\":\"DGN\",\"name\":\"Dungun\",\"states\":\"Terengganu\"},{\"id\":243,\"code\":\"TPN\",\"name\":\"Tampin\",\"states\":\"Negeri Sembilan\"},{\"id\":100,\"code\":\"MLK\",\"name\":\"Melaka\",\"states\":\"Melaka\"}];<\/script>\r\n        <div\r\n        id=\"etick-homepage-alert-shell\"\r\n        class=\"w-full etick-homepage-alert-shell-hidden\"\r\n        data-alert-key=\"etick-homepage-alert:d1b518b47bb04c413f2daab8f0b01484\"\r\n        style=\"position: fixed; top: 0; left: 0; right: 0; z-index: 99998; margin: 0; padding: 0;\"\r\n    >\r\n        <div\r\n            id=\"etick-homepage-alert\"\r\n            class=\"etick-homepage-alert-modern flex w-full items-start gap-3 overflow-hidden px-3 py-3 md:min-h-[68px] md:items-center md:justify-center md:gap-5 md:px-6 md:pr-16\"\r\n            role=\"alert\"\r\n            style=\"background-color: #ffa033; color: #fafafa;\"\r\n        >\r\n            <div class=\"pointer-events-none absolute inset-0 opacity-60\" aria-hidden=\"true\" style=\"background: linear-gradient(90deg, rgba(255,255,255,0.12), rgba(255,255,255,0.02) 35%, rgba(0,0,0,0.06));\"><\/div>\r\n\r\n            <div class=\"relative min-w-0 flex-1 text-center\">\r\n                <div class=\"flex flex-col items-center justify-center gap-2 text-center md:flex-row md:flex-wrap md:items-center md:justify-center md:gap-x-3 md:gap-y-2\">\r\n                                            <p class=\"text-[1.05rem] font-semibold tracking-[-0.02em] md:text-[1.2rem] md:leading-6\">Get up to 10% off<\/p>\r\n                    \r\n                                            <p class=\"text-base opacity-90 md:text-[1rem] md:leading-6\">\r\n                                                            <span>Use code<\/span>\r\n                                                                                        <strong class=\"mx-1 font-extrabold\">JOMNAIKBAS<\/strong>\r\n                                                                                        <span>on app<\/span>\r\n                                                    <\/p>\r\n                    \r\n                                            <button\r\n                            type=\"button\"\r\n                            id=\"etick-homepage-alert-cta\"\r\n                            class=\"relative inline-flex shrink-0 items-center justify-center gap-2 self-center rounded-xl bg-white px-4 py-2.5 text-sm font-bold tracking-[0.01em] transition hover:bg-white\/90 md:px-5 md:text-[0.95rem]\"\r\n                            style=\"color: #ffa033 !important;\"\r\n                            data-scroll-target=\"downloadAppSection\"\r\n                            data-google-url=\"https:\/\/play.google.com\/store\/apps\/details?id=com.eticketing.app\"\r\n                            data-apple-url=\"https:\/\/apps.apple.com\/my\/app\/eticketing-my-bus-tickets-my\/id6737797063\"\r\n                        >\r\n                            Download ETicketing app now!                            <svg class=\"h-4 w-4\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewbox=\"0 0 14 10\">\r\n                                <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.75\" d=\"M1 5h12M9 1l4 4-4 4\"\/>\r\n                            <\/svg>\r\n                        <\/button>\r\n                                    <\/div>\r\n            <\/div>\r\n\r\n            <button\r\n                type=\"button\"\r\n                id=\"etick-homepage-alert-close\"\r\n                class=\"relative -mr-1 inline-flex h-9 w-9 shrink-0 items-center justify-center self-start rounded-full bg-black\/10 p-2 hover:bg-black\/20 focus:outline-none focus:ring-2 focus:ring-white\/30 md:absolute md:right-4 md:top-1\/2 md:mr-0 md:-translate-y-1\/2\"\r\n                aria-label=\"Close alert\"\r\n            >\r\n                <svg class=\"h-4 w-4\" aria-hidden=\"true\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewbox=\"0 0 14 14\">\r\n                    <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m1 1 12 12M13 1 1 13\"\/>\r\n                <\/svg>\r\n            <\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n<div class=\"search-trip-layer flex justify-center p-3 md:p-10\">\r\n    <!--     class=\"flex justify-center p-2 md:p-8 bg-no-repeat bg-center bg-cover md:bg-[url('..\/wp-content\/plugins\/eticketing-booking\/assets\/public\/img\/bg-tower.webp')]\">\r\n -->\r\n\r\n    <head>\r\n        <meta charset=\"UTF-8\">\r\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n\r\n        <!-- Google Font: Inter -->\r\n        <!-- <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600&display=swap\" rel=\"stylesheet\"> -->\r\n\r\n        <style>\r\n            :root {\r\n                --st-bg-1: #f7fafc;\r\n                --st-bg-2: #eff5fb;\r\n                --st-card: #ffffff;\r\n                --st-text: #111827;\r\n                --st-sub: #374151;\r\n                --st-border: #d7e2ee;\r\n                --st-primary: #f97316;\r\n                --st-primary-strong: #ea580c;\r\n                --st-secondary: #1f2937;\r\n                --st-focus: rgba(249, 115, 22, 0.22);\r\n                --et-primary: #f97316;\r\n                --et-primary-strong: #ea580c;\r\n                --et-secondary: #1f2937;\r\n                --et-border: #d7e2ee;\r\n                --et-focus: rgba(249, 115, 22, 0.22);\r\n            }\r\n\r\n            .etick-theme,\r\n            .etick-theme input,\r\n            .etick-theme button,\r\n            .etick-theme label {\r\n                font-family: Roboto, \"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif;\r\n            }\r\n\r\n            .etick-theme {\r\n                background: linear-gradient(180deg, var(--st-bg-1), var(--st-bg-2));\r\n            }\r\n\r\n            .etick-homepage-alert-modern {\r\n                position: relative;\r\n                backdrop-filter: blur(18px);\r\n                -webkit-backdrop-filter: blur(18px);\r\n                border-radius: 0 !important;\r\n                box-shadow: 0 14px 32px rgba(15, 23, 42, 0.16), 0 4px 12px rgba(15, 23, 42, 0.1) !important;\r\n                margin: 0 !important;\r\n                transform: translateY(0);\r\n                transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;\r\n                will-change: transform, opacity;\r\n            }\r\n\r\n            .etick-homepage-alert-hidden {\r\n                transform: translateY(calc(-100% - 2px));\r\n                opacity: 0;\r\n                pointer-events: none;\r\n            }\r\n\r\n            .etick-homepage-alert-shell-hidden {\r\n                pointer-events: none;\r\n            }\r\n\r\n            #wpadminbar {\r\n                z-index: 99999 !important;\r\n            }\r\n\r\n            .etick-homepage-alert-no-transition {\r\n                transition: none !important;\r\n            }\r\n\r\n            .etick-alert-shifted-content {\r\n                transition: margin-top 0.3s cubic-bezier(0.22, 1, 0.36, 1);\r\n                will-change: margin-top;\r\n            }\r\n\r\n            .etick-alert-shifted-anchor {\r\n                transition: margin-top 0.3s cubic-bezier(0.22, 1, 0.36, 1);\r\n                will-change: margin-top;\r\n            }\r\n\r\n            @media (max-width: 767px) {\r\n                .wp-block-navigation__responsive-container,\r\n                .wp-block-navigation__responsive-dialog,\r\n                .wp-block-navigation__responsive-container-content,\r\n                .wp-block-navigation__responsive-container-open,\r\n                .wp-block-navigation__responsive-container-close,\r\n                .wp-block-navigation__responsive-container.is-menu-open,\r\n                .wp-block-navigation__responsive-container.has-modal-open,\r\n                .menu-modal,\r\n                .menu-modal.active,\r\n                .menu-drawer,\r\n                .menu-drawer.is-open,\r\n                .offcanvas-menu,\r\n                .offcanvas-menu.is-open {\r\n                    z-index: 1000001 !important;\r\n                }\r\n\r\n                .wp-block-navigation__responsive-container::before,\r\n                .wp-block-navigation__responsive-dialog::before,\r\n                .menu-modal::before,\r\n                .menu-drawer::before,\r\n                .offcanvas-menu::before {\r\n                    z-index: 1000000 !important;\r\n                }\r\n\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) #etick-homepage-alert-shell,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) #etick-homepage-alert-shell,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) #etick-homepage-alert-shell,\r\n                body.etick-mobile-menu-open #etick-homepage-alert-shell {\r\n                    opacity: 0 !important;\r\n                    visibility: hidden !important;\r\n                    pointer-events: none !important;\r\n                }\r\n\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) .search-trip-layer,\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) .search-card,\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) .dropdown-container,\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) .dropdown-container:focus-within,\r\n                body:has(.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"]) .dropdown-list,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) .search-trip-layer,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) .search-card,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) .dropdown-container,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) .dropdown-container:focus-within,\r\n                body:has(.wp-block-navigation__responsive-container[aria-hidden=\"false\"]) .dropdown-list,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) .search-trip-layer,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) .search-card,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) .dropdown-container,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) .dropdown-container:focus-within,\r\n                body:has(.wp-block-navigation__responsive-container.is-menu-open) .dropdown-list,\r\n                body.etick-mobile-menu-open .search-trip-layer,\r\n                body.etick-mobile-menu-open .search-card,\r\n                body.etick-mobile-menu-open .dropdown-container,\r\n                body.etick-mobile-menu-open .dropdown-container:focus-within,\r\n                body.etick-mobile-menu-open .dropdown-list {\r\n                    z-index: 1 !important;\r\n                }\r\n\r\n                .etick-homepage-alert-modern {\r\n                    display: grid;\r\n                    grid-template-columns: minmax(0, 1fr) auto;\r\n                    grid-template-areas:\r\n                        \"content close\"\r\n                        \"button button\";\r\n                    align-items: flex-start;\r\n                    gap: 0.5rem;\r\n                    padding: 0.55rem 0.75rem;\r\n                }\r\n\r\n                #etick-homepage-alert .min-w-0.flex-1 {\r\n                    grid-area: content;\r\n                    min-width: 0;\r\n                    text-align: center;\r\n                }\r\n\r\n                #etick-homepage-alert-cta {\r\n                    grid-area: button;\r\n                    width: auto;\r\n                    min-width: min(100%, 12rem);\r\n                    min-height: 2.25rem;\r\n                    padding: 0.55rem 0.9rem;\r\n                    justify-self: center;\r\n                    align-self: center;\r\n                    margin-left: auto;\r\n                    margin-right: auto;\r\n                }\r\n\r\n                #etick-homepage-alert-close {\r\n                    grid-area: close;\r\n                }\r\n\r\n                .search-trip-layer {\r\n                    z-index: auto !important;\r\n                    isolation: auto !important;\r\n                }\r\n\r\n                .search-card {\r\n                    z-index: auto !important;\r\n                    isolation: auto !important;\r\n                }\r\n\r\n                .dropdown-container,\r\n                .dropdown-container:focus-within,\r\n                .dropdown-list {\r\n                    z-index: 9500 !important;\r\n                }\r\n            }\r\n\r\n            \/* Keep search section above adjacent WP sections when overlapping. *\/\r\n            .search-trip-layer {\r\n                position: relative;\r\n                z-index: 9000 !important;\r\n                overflow: visible !important;\r\n                isolation: isolate;\r\n            }\r\n\r\n            .etick-theme .bg-orange-400,\r\n            .etick-theme .bg-orange-500 {\r\n                background-color: var(--st-primary) !important;\r\n            }\r\n\r\n            .etick-theme .text-orange-400,\r\n            .etick-theme .text-orange-500,\r\n            .etick-theme .text-orange-600 {\r\n                color: var(--st-primary-strong) !important;\r\n            }\r\n\r\n            .etick-theme .hover\\:bg-orange-700:hover,\r\n            .etick-theme .hover\\:bg-orange-600:hover {\r\n                background-color: #c2410c !important;\r\n            }\r\n\r\n            .etick-theme .bg-gray-100 {\r\n                background-color: #f3f4f6 !important;\r\n            }\r\n\r\n            .etick-theme .text-gray-900,\r\n            .etick-theme .text-gray-800,\r\n            .etick-theme .text-gray-700,\r\n            .etick-theme .text-gray-600 {\r\n                color: #1f2937 !important;\r\n            }\r\n\r\n            .search-card {\r\n                width: 100%;\r\n                max-width: 64rem;\r\n                background: linear-gradient(180deg, #ffffff, #fbfdff);\r\n                border: 1px solid var(--st-border);\r\n                border-radius: 1.15rem;\r\n                box-shadow:\r\n                    0 28px 60px rgba(15, 23, 42, 0.22),\r\n                    0 10px 24px rgba(15, 23, 42, 0.12),\r\n                    inset 0 1px 0 rgba(255, 255, 255, 0.85);\r\n                padding: 1rem;\r\n                position: relative;\r\n                z-index: 9001 !important;\r\n                isolation: isolate;\r\n                overflow: visible !important;\r\n            }\r\n\r\n            .search-heading {\r\n                color: var(--st-text);\r\n                letter-spacing: -0.02em;\r\n                line-height: 1.12;\r\n            }\r\n\r\n            .search-subheading {\r\n                color: var(--st-sub);\r\n            }\r\n\r\n            .field-label {\r\n                color: #334155;\r\n                letter-spacing: 0.04em;\r\n            }\r\n\r\n            .field-input {\r\n                border: 1px solid var(--st-border);\r\n                border-radius: 0.85rem;\r\n                min-height: 2.9rem;\r\n                transition: border-color 0.2s ease, box-shadow 0.2s ease;\r\n            }\r\n\r\n            .input-wrap {\r\n                position: relative;\r\n            }\r\n\r\n            .input-wrap.has-floating .field-input {\r\n                padding-top: 1.15rem !important;\r\n                padding-bottom: 0.45rem !important;\r\n                padding-left: 0.9rem !important;\r\n            }\r\n\r\n            .input-wrap.has-floating .field-input::placeholder {\r\n                color: transparent;\r\n            }\r\n\r\n            .input-wrap.has-floating:focus-within .field-input::placeholder {\r\n                color: #94a3b8;\r\n            }\r\n\r\n            .input-wrap.placeholder-first:not(.has-value):not(:focus-within) .floating-label {\r\n                opacity: 0;\r\n                visibility: hidden;\r\n            }\r\n\r\n            .input-wrap.placeholder-first:not(.has-value):not(:focus-within) .field-input {\r\n                padding-top: 0.7rem !important;\r\n                padding-bottom: 0.7rem !important;\r\n            }\r\n\r\n            .floating-label {\r\n                position: absolute;\r\n                left: 0.9rem;\r\n                top: 50%;\r\n                transform: translateY(-50%);\r\n                color: #64748b;\r\n                font-size: 0.86rem;\r\n                line-height: 1;\r\n                pointer-events: none;\r\n                transition: none;\r\n                z-index: 4;\r\n                background: linear-gradient(180deg, #ffffff, #f8fbff);\r\n                padding: 0 0.22rem;\r\n            }\r\n\r\n            .labels-ready .floating-label {\r\n                transition: all 0.18s ease;\r\n            }\r\n\r\n            .input-wrap.has-value .floating-label,\r\n            .input-wrap:focus-within .floating-label,\r\n            .input-wrap.has-floating:has(.field-input:not(:placeholder-shown)) .floating-label,\r\n            .input-wrap.has-floating:has(.field-input:-webkit-autofill) .floating-label {\r\n                top: 0.45rem;\r\n                transform: translateY(0);\r\n                font-size: 0.68rem;\r\n                font-weight: 600;\r\n                color: var(--st-primary-strong);\r\n            }\r\n\r\n            .field-input:focus {\r\n                border-color: var(--st-primary);\r\n                box-shadow: 0 0 0 4px var(--st-focus);\r\n            }\r\n\r\n            .date-proxy-input {\r\n                position: relative;\r\n                z-index: 1;\r\n                pointer-events: none;\r\n                cursor: pointer;\r\n            }\r\n\r\n            .date-display-text {\r\n                display: flex;\r\n                align-items: center;\r\n                min-height: 2.9rem;\r\n                line-height: 1.2;\r\n                color: #374151;\r\n                background: #ffffff;\r\n            }\r\n\r\n            .native-date-input {\r\n                position: absolute;\r\n                inset: 0;\r\n                width: 100%;\r\n                height: 100%;\r\n                opacity: 0;\r\n                z-index: 2;\r\n                cursor: pointer;\r\n            }\r\n\r\n            .search-submit {\r\n                min-height: 2.95rem;\r\n                border-radius: 0.85rem;\r\n                background: linear-gradient(90deg, var(--st-primary), var(--st-primary-strong));\r\n            }\r\n\r\n            .search-submit:hover {\r\n                filter: brightness(0.96);\r\n            }\r\n\r\n            .search-submit-loading {\r\n                background: linear-gradient(90deg, #c2410c, #9a3412) !important;\r\n                box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.22), 0 6px 16px rgba(15, 23, 42, 0.16);\r\n                transform: translateY(1px);\r\n            }\r\n\r\n            .submit-dock {\r\n                position: relative;\r\n            }\r\n\r\n            .search-submit-docked {\r\n                box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);\r\n            }\r\n\r\n            @media (min-width: 768px) {\r\n                .submit-dock {\r\n                    margin-bottom: -1.45rem;\r\n                }\r\n\r\n                .search-submit-docked {\r\n                    transform: translateY(30%);\r\n                }\r\n            }\r\n\r\n            .trip-grid {\r\n                align-items: end;\r\n            }\r\n\r\n            .trip-field {\r\n                overflow: visible;\r\n                border: 1px solid #e2e8f0;\r\n                border-radius: 1rem;\r\n                background: linear-gradient(180deg, #ffffff, #f8fbff);\r\n                \/* padding: 0.8rem; *\/\r\n                box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);\r\n                transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;\r\n                animation: field-reveal 0.45s ease both;\r\n            }\r\n\r\n            .trip-field:hover {\r\n                transform: translateY(-3px);\r\n                border-color: #cbd5e1;\r\n                box-shadow: 0 16px 34px rgba(15, 23, 42, 0.1);\r\n            }\r\n\r\n            @keyframes field-reveal {\r\n                from {\r\n                    opacity: 0;\r\n                    transform: translateY(14px);\r\n                }\r\n\r\n                to {\r\n                    opacity: 1;\r\n                    transform: translateY(0);\r\n                }\r\n            }\r\n\r\n            .trip-grid>.trip-field:nth-child(1) {\r\n                animation-delay: 0.04s;\r\n            }\r\n\r\n            .trip-grid>.trip-field:nth-child(2) {\r\n                animation-delay: 0.1s;\r\n            }\r\n\r\n            .trip-grid>.trip-field:nth-child(3) {\r\n                animation-delay: 0.16s;\r\n            }\r\n\r\n            .trip-grid>.trip-field:nth-child(4) {\r\n                animation-delay: 0.22s;\r\n            }\r\n\r\n            .dropdown-container {\r\n                position: relative;\r\n                width: 100%;\r\n                z-index: 6000;\r\n                overflow: visible;\r\n            }\r\n\r\n            .dropdown-container:focus-within {\r\n                z-index: 9100;\r\n            }\r\n\r\n            .dropdown-list {\r\n                display: none;\r\n                position: absolute;\r\n                top: calc(100% + 0.25rem);\r\n                left: 0;\r\n                width: 100%;\r\n                max-height: 280px;\r\n                overflow-y: auto;\r\n                border: 1px solid var(--st-border);\r\n                background-color: white;\r\n                border-radius: 0.75rem;\r\n                box-shadow: 0 16px 36px rgba(0, 0, 0, 0.18);\r\n                z-index: 9110;\r\n                pointer-events: auto;\r\n            }\r\n\r\n            \/* Let From\/To dropdowns grow wider than field width on desktop *\/\r\n            #dropdown {\r\n                width: max(100%, 26rem);\r\n            }\r\n\r\n            #dropdown2 {\r\n                left: auto;\r\n                right: 0;\r\n                width: max(100%, 26rem);\r\n            }\r\n\r\n            .dropdown-item {\r\n                padding: 8px 12px;\r\n                cursor: pointer;\r\n                transition: background-color 0.3s;\r\n                font-size: smaller;\r\n            }\r\n\r\n            .dropdown-item:hover {\r\n                background-color: #f3f4f6;\r\n            }\r\n\r\n            .dropdown-item:focus {\r\n                outline: none;\r\n            }\r\n\r\n            .dropdown-item span {\r\n                margin-left: 20px;\r\n            }\r\n\r\n            .no-results {\r\n                padding: 8px 12px;\r\n                color: #6B7280;\r\n                font-style: italic;\r\n            }\r\n\r\n            .dropdown-item.font-semibold {\r\n                margin-left: 0;\r\n                background-color: #FB923C;\r\n                color: #FFFFFF;\r\n            }\r\n\r\n            @keyframes button-shake {\r\n\r\n                0%,\r\n                100% {\r\n                    transform: translateX(0);\r\n                }\r\n\r\n                25% {\r\n                    transform: translateX(-4px);\r\n                }\r\n\r\n                50% {\r\n                    transform: translateX(4px);\r\n                }\r\n\r\n                75% {\r\n                    transform: translateX(-2px);\r\n                }\r\n            }\r\n\r\n            .swap-feedback {\r\n                animation: button-shake 0.4s ease;\r\n            }\r\n\r\n            @keyframes swap-float {\r\n\r\n                0%,\r\n                100% {\r\n                    transform: translateY(0);\r\n                }\r\n\r\n                50% {\r\n                    transform: translateY(-3px);\r\n                }\r\n            }\r\n\r\n            @keyframes swap-pop {\r\n                0% {\r\n                    transform: scale(1);\r\n                }\r\n\r\n                50% {\r\n                    transform: scale(1.14);\r\n                }\r\n\r\n                100% {\r\n                    transform: scale(1);\r\n                }\r\n            }\r\n\r\n            #swapBtn .swap-icon-wrap {\r\n                animation: none;\r\n                will-change: transform;\r\n            }\r\n\r\n            #swapBtn.swap-pop .swap-icon-wrap {\r\n                animation: swap-pop 0.28s ease;\r\n            }\r\n\r\n            @keyframes clear-date-pulse {\r\n\r\n                0%,\r\n                100% {\r\n                    transform: translateY(-50%) scale(1);\r\n                    box-shadow: 0 0 0 0 rgba(249, 115, 22, 0.42);\r\n                }\r\n\r\n                50% {\r\n                    transform: translateY(-50%) scale(1.08);\r\n                    box-shadow: 0 0 0 8px rgba(249, 115, 22, 0);\r\n                }\r\n            }\r\n\r\n            .clear-date-btn {\r\n                width: 1.7rem;\r\n                height: 1.7rem;\r\n                border-radius: 9999px;\r\n                background: linear-gradient(145deg, #fb923c, #ea580c);\r\n                color: #ffffff !important;\r\n                font-size: 0;\r\n                font-weight: 700;\r\n                line-height: 1;\r\n                display: inline-grid;\r\n                place-items: center;\r\n                border: 0;\r\n                cursor: pointer;\r\n                transition: transform 0.2s ease, filter 0.2s ease;\r\n                padding: 0;\r\n                z-index: 6;\r\n            }\r\n\r\n            .clear-date-btn.hidden {\r\n                display: none !important;\r\n            }\r\n\r\n            .clear-date-btn::before {\r\n                content: \"\\00D7\";\r\n                font-size: 1rem;\r\n                line-height: 1;\r\n                display: block;\r\n            }\r\n\r\n            .clear-date-btn.is-visible {\r\n                animation: clear-date-pulse 1.2s ease-in-out infinite;\r\n            }\r\n\r\n            .clear-date-btn:hover {\r\n                transform: translateY(-50%) scale(1.12);\r\n                filter: brightness(0.95);\r\n            }\r\n\r\n            @media (min-width: 768px) {\r\n                .search-card {\r\n                    padding: 0.8rem;\r\n                }\r\n            }\r\n\r\n            @media (max-width: 767px) {\r\n\r\n                #dropdown,\r\n                #dropdown2 {\r\n                    width: 100%;\r\n                    left: 0;\r\n                    right: auto;\r\n                }\r\n            }\r\n        <\/style>\r\n    <\/head>\r\n\r\n    <body>\r\n        <div class=\"search-card mx-auto min-h-[100px]\">\r\n            <form id=\"searchTripForm\" action=\"https:\/\/eticketing.my\/ms\/seatview\/\" method=\"get\"\r\n                autocomplete=\"off\" onsubmit=\"return validateField()\" novalidate data-trp-original-action=\"https:\/\/eticketing.my\/ms\/seatview\/\">\r\n                <!-- Form -->\r\n                <div id=\"searchTripGrid\" class=\"relative grid grid-cols-1\">\r\n                    <!-- <input type=\"hidden\" name=\"action\" value=\"process_view_seat\"> -->\r\n                    <input type='hidden' id='from' name='from' value=''>\r\n                    <input type='hidden' id='to' name='to' value=''>\r\n                    <input type='hidden' id='fromId' name='fromId' value=''>\r\n                    <input type='hidden' id='toId' name='toId' value=''>\r\n                    <input type='hidden' id='fromDateQuery' name='fromDate' value=''>\r\n                    <input type='hidden' id='toDateQuery' name='toDate' value=''>\r\n\r\n                    <div class=\"trip-grid relative grid grid-cols-2 md:grid-cols-4 gap-4 md:gap-5 w-full\">\r\n                        <!-- From -->\r\n                        <div class=\"container trip-field w-full col-span-2 md:col-span-1\">\r\n                            <div class=\"dropdown-container\">\r\n                                <div class=\"input-wrap has-floating\"><label for=\"departFrom\"\r\n                                        class=\"floating-label\">Dari<\/label>\r\n                                    <input type=\"text\" id=\"departFrom\"\r\n                                        class=\"field-input text-sm block w-full px-4 py-2 text-gray-700 bg-white focus:outline-none\"\r\n                                        placeholder=\"From: City, Station\" autocomplete=\"off\" required>\r\n                                <\/div>\r\n\r\n                                <p id=\"departError\" class=\"mt-2 text-sm text-red-500 hidden\">Invalid Location<\/p>\r\n\r\n                                <!-- Dropdown List -->\r\n                                <div id=\"dropdown\" class=\"dropdown-list\" onclick=\"val(accessToken);\">\r\n                                    <!-- Dynamic options will be injected here -->\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <!-- To -->\r\n                        <div class=\"container trip-field w-full col-span-2 md:col-span-1\">\r\n                            <div class=\"dropdown-container\">\r\n                                <div class=\"input-wrap has-floating\"><label for=\"departTo\"\r\n                                        class=\"floating-label\">Ke<\/label>\r\n                                    <input type=\"text\" id=\"departTo\"\r\n                                        class=\"field-input text-sm block w-full px-4 py-2 text-gray-700 bg-white focus:outline-none\"\r\n                                        placeholder=\"To: City, Station\" autocomplete=\"off\" disabled required>\r\n                                <\/div>\r\n\r\n                                <p id=\"returnError\" class=\"mt-2 text-sm text-red-500 hidden\">Invalid Destination<\/p>\r\n\r\n                                <!-- Dropdown List -->\r\n                                <div id=\"dropdown2\" class=\"dropdown-list\" onclick=\"assignDepartTrip()\">\r\n                                    <!-- Dynamic options will be injected here -->\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <!-- Depart Date -->\r\n                        <div class=\"container trip-field col-span-1 md:col-span-1\">\r\n                            <div class=\"input-wrap has-floating\">\r\n                                <label for=\"fromDateDisplay\" class=\"floating-label\">Tarikh Bertolak<\/label>\r\n                                <input type=\"text\" id=\"fromDateDisplay\"\r\n                                    class=\"field-input date-proxy-input date-display-text text-sm block w-full px-4 py-2 text-gray-700 bg-white\"\r\n                                    placeholder=\"DD-MM-YYYY\" readonly tabindex=\"-1\" aria-hidden=\"true\">\r\n                                <input type=\"date\" id=\"fromDate\" class=\"native-date-input\" autocomplete=\"off\"\r\n                                    onclick=\"removeDateError()\"\r\n                                    oninput=\"syncDateDisplay('fromDate'); syncFloatingLabelState();\"\r\n                                    onchange=\"syncDateDisplay('fromDate'); syncFloatingLabelState();\">\r\n                            <\/div>\r\n\r\n                            <p id=\"dateError\" class=\"mt-2 text-sm text-red-500 hidden\">Please select date<\/p>\r\n                        <\/div>\r\n\r\n                        <!-- Return Date -->\r\n                        <div class=\"relative trip-field w-full col-span-1 md:col-span-1\">\r\n                            <div class=\"input-wrap has-floating\">\r\n                                <label for=\"toDateDisplay\" class=\"floating-label\">Tarikh Kembali <span\r\n                                        class=\"text-slate-400\">(Optional)<\/span><\/label>\r\n                                <input type=\"text\" id=\"toDateDisplay\"\r\n                                    class=\"field-input date-proxy-input date-display-text text-sm block w-full px-4 py-2 text-gray-700 bg-white pr-10\"\r\n                                    placeholder=\"DD-MM-YYYY (Optional)\" readonly tabindex=\"-1\" aria-hidden=\"true\">\r\n                                <input type=\"date\" id=\"toDate\" class=\"native-date-input\" autocomplete=\"off\"\r\n                                    oninput=\"syncDateDisplay('toDate'); checkReturnDateField(); syncFloatingLabelState();\"\r\n                                    onchange=\"syncDateDisplay('toDate'); checkReturnDateField(); syncFloatingLabelState();\" \/>\r\n                                <button type=\"button\" id=\"clearDate\"\r\n                                    class=\"clear-date-btn absolute right-3 top-1\/2 -translate-y-1\/2 hidden\"\r\n                                    onclick=\"document.getElementById('toDate').value = ''; syncDateDisplay('toDate'); syncToDateQueryField(); checkReturnDateField(); syncFloatingLabelState();\"><\/button>\r\n\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                    <\/div>\r\n\r\n                    <button type=\"button\" id=\"swapBtn\"\r\n                        class=\"absolute transition-all duration-300 transform -translate-x-1\/2 -translate-y-1\/2 z-10 hover:scale-120 bg-white border border-slate-200 rounded-full h-9 w-9 p-0 shadow-md hover:bg-gray-100\">\r\n                        <span class=\"swap-icon-wrap block\">\r\n                            <i class=\"fa-solid fa-arrow-right-arrow-left text-slate-700 text-base leading-none\"><\/i>\r\n                        <\/span>\r\n                    <\/button>\r\n\r\n                    <!-- Submit -->\r\n                    <div class=\"submit-dock flex justify-center min-h-[40px]\">\r\n                        <button type=\"submit\" name=\"search\" id=\"searchBtn\" value=\"Submit\"\r\n                            class=\"search-submit search-submit-docked w-full md:w-auto md:min-w-[11rem] mt-2 text-white focus:ring-4 focus:outline-none focus:ring-orange-300 font-semibold text-sm px-5 py-2.5 text-center inline-flex justify-center items-center\">\r\n                            <i class=\"fa-solid fa-magnifying-glass mr-1\"><\/i>Cari Bas\r\n                        <\/button>\r\n                    <\/div>\r\n                <\/div>\r\n                <!-- End New Form -->\r\n\r\n            <input type=\"hidden\" name=\"trp-form-language\" value=\"ms\"\/><\/form>\r\n        <\/div>\r\n        <script>\r\n            (function () {\r\n                const alertShell = document.getElementById('etick-homepage-alert-shell');\r\n                const alertEl = document.getElementById('etick-homepage-alert');\r\n                const closeBtn = document.getElementById('etick-homepage-alert-close');\r\n                const ctaBtn = document.getElementById('etick-homepage-alert-cta');\r\n                const contentEl = document.querySelector('.search-trip-layer');\r\n                const contentGap = 10;\r\n                const scrollThreshold = 12;\r\n                let isDismissedForView = false;\r\n                let isVisible = false;\r\n                let lastScrollY = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : 0);\r\n\r\n                if (!alertShell) {\r\n                    return;\r\n                }\r\n\r\n                if (!alertEl) {\r\n                    return;\r\n                }\r\n\r\n                function getAdminBarOffset() {\r\n                    const adminBar = document.getElementById('wpadminbar');\r\n                    if (!adminBar) {\r\n                        return 0;\r\n                    }\r\n\r\n                    const style = window.getComputedStyle(adminBar);\r\n                    if (style.display === 'none') {\r\n                        return 0;\r\n                    }\r\n\r\n                    if (style.visibility === 'hidden') {\r\n                        return 0;\r\n                    }\r\n\r\n                    const adminBarHeight = adminBar.getBoundingClientRect().height;\r\n                    return Math.ceil(adminBarHeight ? adminBarHeight : 0);\r\n                }\r\n\r\n                function getAlertHeight() {\r\n                    if (!alertEl) {\r\n                        return 0;\r\n                    }\r\n\r\n                    return alertEl.getBoundingClientRect().height;\r\n                }\r\n\r\n                function isMobileMenuOpen() {\r\n                    const selectors = [\r\n                        '.wp-block-navigation__responsive-container.is-menu-open',\r\n                        '.wp-block-navigation__responsive-container.has-modal-open',\r\n                        '.wp-block-navigation__responsive-container[aria-hidden=\"false\"]',\r\n                        '.wp-block-navigation__responsive-dialog',\r\n                        '.is-menu-open .wp-block-navigation__responsive-container',\r\n                        '.menu-modal.active',\r\n                        '.menu-drawer.is-open',\r\n                        '.mobile-menu-open',\r\n                        '.offcanvas-menu.is-open'\r\n                    ];\r\n\r\n                    for (const selector of selectors) {\r\n                        const elements = document.querySelectorAll(selector);\r\n                        for (const element of elements) {\r\n                            if (!element) {\r\n                                continue;\r\n                            }\r\n\r\n                            const style = window.getComputedStyle(element);\r\n                            if (style.display === 'none' || style.visibility === 'hidden') {\r\n                                continue;\r\n                            }\r\n\r\n                            const rect = element.getBoundingClientRect();\r\n                            if (rect.width <= 0 || rect.height <= 0) {\r\n                                continue;\r\n                            }\r\n\r\n                            return true;\r\n                        }\r\n                    }\r\n\r\n                    const expandedToggle = document.querySelector(\r\n                        '.wp-block-navigation__responsive-container-open[aria-expanded=\"true\"], ' +\r\n                        '.wp-block-navigation__responsive-container-open[aria-pressed=\"true\"], ' +\r\n                        '.menu-toggle[aria-expanded=\"true\"], ' +\r\n                        'button[aria-label*=\"menu\" i][aria-expanded=\"true\"]'\r\n                    );\r\n\r\n                    return Boolean(expandedToggle);\r\n                }\r\n\r\n                function syncMobileMenuState() {\r\n                    if (!document.body) {\r\n                        return;\r\n                    }\r\n\r\n                    const shouldFlagOpen = window.matchMedia('(max-width: 767px)').matches ? isMobileMenuOpen() : false;\r\n                    document.body.classList.toggle('etick-mobile-menu-open', shouldFlagOpen);\r\n                }\r\n\r\n                function getAlertAnchorElement() {\r\n                    const explicitAnchor = document.getElementById('headerAndSearchSection');\r\n                    if (explicitAnchor) {\r\n                        return explicitAnchor;\r\n                    }\r\n\r\n                    if (!contentEl) {\r\n                        return null;\r\n                    }\r\n\r\n                    const coverAncestor = contentEl.closest('.wp-block-cover');\r\n                    if (!coverAncestor) {\r\n                        return null;\r\n                    }\r\n\r\n                    const containsHeader = getHeaderCandidates().some(function (element) {\r\n                        return coverAncestor.contains(element);\r\n                    });\r\n\r\n                    return containsHeader ? coverAncestor : null;\r\n                }\r\n\r\n                function mountAlertToPreferredContainer() {\r\n                    if (!document.body) {\r\n                        return;\r\n                    }\r\n\r\n                    if (alertShell.parentNode !== document.body) {\r\n                        document.body.appendChild(alertShell);\r\n                    }\r\n                }\r\n\r\n                function getHeaderCandidates() {\r\n                    const selectors = [\r\n                        'header',\r\n                        '[role=\"banner\"]',\r\n                        '#masthead',\r\n                        '#site-header',\r\n                        '.site-header',\r\n                        '.main-header',\r\n                        '.header',\r\n                        '.sticky-header',\r\n                        '.elementor-sticky--active'\r\n                    ];\r\n                    const seen = new Set();\r\n                    const candidates = [];\r\n\r\n                    selectors.forEach(function (selector) {\r\n                        document.querySelectorAll(selector).forEach(function (element) {\r\n                            if (!element) {\r\n                                return;\r\n                            }\r\n\r\n                            if (seen.has(element)) {\r\n                                return;\r\n                            }\r\n\r\n                            if (element === alertShell) {\r\n                                return;\r\n                            }\r\n\r\n                            if (element.contains(alertShell)) {\r\n                                return;\r\n                            }\r\n\r\n                            const style = window.getComputedStyle(element);\r\n                            if (style.display === 'none') {\r\n                                return;\r\n                            }\r\n\r\n                            if (style.visibility === 'hidden') {\r\n                                return;\r\n                            }\r\n\r\n                            const rect = element.getBoundingClientRect();\r\n                            if (rect.height <= 0) {\r\n                                return;\r\n                            }\r\n\r\n                            const isTopArea = rect.top <= getAdminBarOffset() + 6;\r\n                            const isStickyLike = style.position === 'fixed' ? true : style.position === 'sticky';\r\n                            if (!isTopArea) {\r\n                                if (!isStickyLike) {\r\n                                    return;\r\n                                }\r\n                            }\r\n\r\n                            if (!isStickyLike) {\r\n                                if (!isTopArea) {\r\n                                    return;\r\n                                }\r\n                            }\r\n\r\n                            seen.add(element);\r\n                            candidates.push(element);\r\n                        });\r\n                    });\r\n\r\n                    return candidates;\r\n                }\r\n\r\n                function updateHeaderOffset() {\r\n                    if (getAlertAnchorElement()) {\r\n                        getHeaderCandidates().forEach(function (element) {\r\n                            if (element.dataset.etickAlertOriginalInlineTop) {\r\n                                element.style.top = element.dataset.etickAlertOriginalInlineTop;\r\n                            } else {\r\n                                element.style.removeProperty('top');\r\n                            }\r\n                            delete element.dataset.etickAlertOriginalInlineTop;\r\n                            delete element.dataset.etickAlertBaseTop;\r\n                        });\r\n                        return;\r\n                    }\r\n\r\n                    const alertHeight = isVisible ? getAlertHeight() : 0;\r\n\r\n                    getHeaderCandidates().forEach(function (element) {\r\n                        if (!Object.prototype.hasOwnProperty.call(element.dataset, 'etickAlertOriginalInlineTop')) {\r\n                            element.dataset.etickAlertOriginalInlineTop = element.style.top ? element.style.top : '';\r\n                        }\r\n\r\n                        if (!Object.prototype.hasOwnProperty.call(element.dataset, 'etickAlertBaseTop')) {\r\n                            const computedTop = window.getComputedStyle(element).top;\r\n                            const numericTop = Number.parseFloat(computedTop);\r\n                            element.dataset.etickAlertBaseTop = Number.isFinite(numericTop) ? `${numericTop}` : '0';\r\n                        }\r\n\r\n                        if (!isVisible) {\r\n                            if (element.dataset.etickAlertOriginalInlineTop) {\r\n                                element.style.top = element.dataset.etickAlertOriginalInlineTop;\r\n                            } else {\r\n                                element.style.removeProperty('top');\r\n                            }\r\n                            delete element.dataset.etickAlertOriginalInlineTop;\r\n                            delete element.dataset.etickAlertBaseTop;\r\n                            return;\r\n                        }\r\n\r\n                        if (!alertHeight) {\r\n                            if (element.dataset.etickAlertOriginalInlineTop) {\r\n                                element.style.top = element.dataset.etickAlertOriginalInlineTop;\r\n                            } else {\r\n                                element.style.removeProperty('top');\r\n                            }\r\n                            delete element.dataset.etickAlertOriginalInlineTop;\r\n                            delete element.dataset.etickAlertBaseTop;\r\n                            return;\r\n                        }\r\n\r\n                        const baseTop = Number.parseFloat(element.dataset.etickAlertBaseTop);\r\n                        const safeTop = Number.isFinite(baseTop) ? baseTop : 0;\r\n                        element.style.top = `${safeTop + alertHeight}px`;\r\n                    });\r\n                }\r\n\r\n                function placeAlert() {\r\n                    const isMobileViewport = window.matchMedia('(max-width: 767px)').matches;\r\n                    const alertAnchor = getAlertAnchorElement();\r\n                    if (alertAnchor) {\r\n                        const scrollY = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : 0);\r\n                        const scrollX = window.pageXOffset ? window.pageXOffset : (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : 0);\r\n                        const anchorRect = alertAnchor.getBoundingClientRect();\r\n                        const alertHeight = isVisible ? getAlertHeight() : 0;\r\n                        const anchoredTop = Math.max((anchorRect.top + scrollY) - alertHeight, 0);\r\n\r\n                        alertShell.style.position = 'absolute';\r\n                        alertShell.style.top = `${anchoredTop}px`;\r\n                        alertShell.style.left = `${Math.max(anchorRect.left + scrollX, 0)}px`;\r\n                        alertShell.style.right = 'auto';\r\n                        alertShell.style.width = `${Math.max(anchorRect.width, 0)}px`;\r\n                        alertShell.style.zIndex = isMobileViewport ? '30' : '9998';\r\n                        return;\r\n                    }\r\n\r\n                    alertShell.style.position = 'fixed';\r\n                    alertShell.style.top = `${getAdminBarOffset()}px`;\r\n                    alertShell.style.left = '0';\r\n                    alertShell.style.right = '0';\r\n                    alertShell.style.width = 'auto';\r\n                    alertShell.style.zIndex = isMobileViewport ? '30' : '99998';\r\n                }\r\n\r\n                function updateContentOffset() {\r\n                    const alertAnchor = getAlertAnchorElement();\r\n\r\n                    if (alertAnchor) {\r\n                        alertAnchor.classList.add('etick-alert-shifted-anchor');\r\n\r\n                        if (alertAnchor.dataset.etickAlertMarginTop === undefined) {\r\n                            alertAnchor.dataset.etickAlertMarginTop = alertAnchor.style.marginTop ? alertAnchor.style.marginTop : '';\r\n                        }\r\n\r\n                        if (!isVisible) {\r\n                            if (alertAnchor.dataset.etickAlertMarginTop) {\r\n                                alertAnchor.style.marginTop = alertAnchor.dataset.etickAlertMarginTop;\r\n                            } else {\r\n                                alertAnchor.style.removeProperty('margin-top');\r\n                            }\r\n                            return;\r\n                        }\r\n\r\n                        alertAnchor.style.marginTop = `${getAlertHeight()}px`;\r\n                        return;\r\n                    }\r\n\r\n                    if (!contentEl) {\r\n                        return;\r\n                    }\r\n\r\n                    contentEl.classList.add('etick-alert-shifted-content');\r\n\r\n                    if (contentEl.dataset.etickAlertMarginTop === undefined) {\r\n                        contentEl.dataset.etickAlertMarginTop = contentEl.style.marginTop ? contentEl.style.marginTop : '';\r\n                    }\r\n\r\n                    if (!isVisible || getAlertAnchorElement()) {\r\n                        if (contentEl.dataset.etickAlertMarginTop) {\r\n                            contentEl.style.marginTop = contentEl.dataset.etickAlertMarginTop;\r\n                        } else {\r\n                            contentEl.style.removeProperty('margin-top');\r\n                        }\r\n                        return;\r\n                    }\r\n\r\n                    const offset = `${getAlertHeight() + contentGap}px`;\r\n                    contentEl.style.marginTop = offset;\r\n                }\r\n\r\n                function setAlertVisibility(shouldShow) {\r\n                    syncMobileMenuState();\r\n                    placeAlert();\r\n\r\n                    if (shouldShow) {\r\n                        alertShell.classList.remove('etick-homepage-alert-shell-hidden');\r\n                        alertEl.classList.remove('etick-homepage-alert-hidden');\r\n                        isVisible = true;\r\n                        updateHeaderOffset();\r\n                        updateContentOffset();\r\n                        return;\r\n                    }\r\n\r\n                    alertEl.classList.add('etick-homepage-alert-hidden');\r\n                    alertShell.classList.add('etick-homepage-alert-shell-hidden');\r\n                    isVisible = false;\r\n                    updateHeaderOffset();\r\n                    updateContentOffset();\r\n                }\r\n\r\n                function hideAlert(permanent) {\r\n                    if (permanent) {\r\n                        isDismissedForView = true;\r\n                    }\r\n\r\n                    setAlertVisibility(false);\r\n                }\r\n\r\n                function showAlert() {\r\n                    if (isDismissedForView) {\r\n                        return;\r\n                    }\r\n\r\n                    setAlertVisibility(true);\r\n                }\r\n\r\n                function handleScrollVisibility() {\r\n                    if (getAlertAnchorElement()) {\r\n                        return;\r\n                    }\r\n\r\n                    if (isDismissedForView) {\r\n                        return;\r\n                    }\r\n\r\n                    const currentScrollY = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : 0);\r\n\r\n                    if (currentScrollY <= 8) {\r\n                        showAlert();\r\n                        lastScrollY = currentScrollY;\r\n                        return;\r\n                    }\r\n\r\n                    if (currentScrollY > scrollThreshold) {\r\n                        setAlertVisibility(false);\r\n                    }\r\n\r\n                    lastScrollY = currentScrollY;\r\n                }\r\n\r\n                function syncAlertOffset() {\r\n                    syncMobileMenuState();\r\n                    mountAlertToPreferredContainer();\r\n                    placeAlert();\r\n                    updateHeaderOffset();\r\n                    updateContentOffset();\r\n                }\r\n\r\n                if (closeBtn) {\r\n                    closeBtn.addEventListener('click', function (event) {\r\n                        event.preventDefault();\r\n                        event.stopPropagation();\r\n                        hideAlert(true);\r\n                    }, { passive: false });\r\n                }\r\n\r\n                if (ctaBtn) {\r\n                    ctaBtn.addEventListener('click', function () {\r\n                        const isMobileViewport = window.matchMedia('(max-width: 767px)').matches;\r\n                        const userAgent = navigator.userAgent ? navigator.userAgent : (navigator.vendor ? navigator.vendor : (window.opera ? window.opera : ''));\r\n                        const appleUrl = ctaBtn.getAttribute('data-apple-url') ? ctaBtn.getAttribute('data-apple-url') : '';\r\n                        const googleUrl = ctaBtn.getAttribute('data-google-url') ? ctaBtn.getAttribute('data-google-url') : '';\r\n                        const isTouchMac = navigator.platform === 'MacIntel' ? navigator.maxTouchPoints > 1 : false;\r\n                        const isAppleDevice = \/iPad|iPhone|iPod\/.test(userAgent) ? true : isTouchMac;\r\n                        const isAndroidDevice = \/Android\/i.test(userAgent);\r\n\r\n                        if (isMobileViewport) {\r\n                            if (isAppleDevice) {\r\n                                if (appleUrl) {\r\n                                    window.location.href = appleUrl;\r\n                                    return;\r\n                                }\r\n                            }\r\n\r\n                            if (isAndroidDevice) {\r\n                                if (googleUrl) {\r\n                                    window.location.href = googleUrl;\r\n                                    return;\r\n                                }\r\n                            }\r\n                        }\r\n\r\n                        const targetId = ctaBtn.getAttribute('data-scroll-target');\r\n                        const targetEl = targetId ? document.getElementById(targetId) : null;\r\n                        if (targetEl) {\r\n                            const scrollY = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : 0);\r\n                            const targetTop = targetEl.getBoundingClientRect().top + scrollY;\r\n                            const offsetTop = getAdminBarOffset() + getAlertHeight() + 8;\r\n                            const destination = Math.max(targetTop - offsetTop, 0);\r\n                            window.scrollTo({ top: destination, behavior: 'smooth' });\r\n                        }\r\n                    });\r\n                }\r\n\r\n                mountAlertToPreferredContainer();\r\n                showAlert();\r\n\r\n                syncAlertOffset();\r\n                requestAnimationFrame(syncAlertOffset);\r\n                setTimeout(syncAlertOffset, 100);\r\n                setTimeout(syncAlertOffset, 250);\r\n                window.addEventListener('resize', syncAlertOffset);\r\n                window.addEventListener('scroll', handleScrollVisibility, { passive: true });\r\n                window.addEventListener('load', function () {\r\n                    if (!isDismissedForView) {\r\n                        showAlert();\r\n                    }\r\n                    syncAlertOffset();\r\n                });\r\n\r\n                document.addEventListener('click', function (event) {\r\n                    const trigger = event.target ? event.target.closest(\r\n                        '.wp-block-navigation__responsive-container-open, ' +\r\n                        '.wp-block-navigation__responsive-container-close, ' +\r\n                        '.menu-toggle, ' +\r\n                        'button[aria-label*=\"menu\" i]'\r\n                    ) : null;\r\n\r\n                    if (!trigger) {\r\n                        return;\r\n                    }\r\n\r\n                    setTimeout(syncAlertOffset, 0);\r\n                    setTimeout(syncAlertOffset, 120);\r\n                });\r\n            })();\r\n\r\n            const accessToken = \"\";\r\n            const fromDateInput = document.getElementById(\"fromDate\");\r\n            const returnDateInput = document.getElementById(\"toDate\");\r\n            const clearBtn = document.getElementById(\"clearDate\");\r\n\r\n            function ensureSearchTripOverlayLayer() {\r\n                const layer = document.querySelector('.search-trip-layer');\r\n                if (!layer) return;\r\n\r\n                const isMobileViewport = window.matchMedia('(max-width: 767px)').matches;\r\n\r\n                let parent = layer.parentElement;\r\n                let depth = 0;\r\n\r\n                while (true) {\r\n                    if (!parent || parent === document.body || depth >= 6) {\r\n                        break;\r\n                    }\r\n\r\n                    const computed = window.getComputedStyle(parent);\r\n                    const overflowX = computed.overflowX;\r\n                    const overflowY = computed.overflowY;\r\n                    const overflow = computed.overflow;\r\n                    const isClipping = [overflow, overflowX, overflowY].some((value) => value === 'hidden' || value === 'clip');\r\n\r\n                    if (isClipping) {\r\n                        parent.style.setProperty('overflow', 'visible', 'important');\r\n                        parent.style.setProperty('overflow-x', 'visible', 'important');\r\n                        parent.style.setProperty('overflow-y', 'visible', 'important');\r\n                    }\r\n\r\n                    if (computed.position === 'static') {\r\n                        parent.style.setProperty('position', 'relative', 'important');\r\n                    }\r\n                    if (isMobileViewport) {\r\n                        parent.style.setProperty('z-index', 'auto', 'important');\r\n                    } else {\r\n                        parent.style.setProperty('z-index', '8990', 'important');\r\n                    }\r\n\r\n                    parent = parent.parentElement;\r\n                    depth += 1;\r\n                }\r\n            }\r\n\r\n            ensureSearchTripOverlayLayer();\r\n            window.addEventListener('load', ensureSearchTripOverlayLayer);\r\n\r\n            function normalizeToIsoDate(dateValue) {\r\n                const raw = (dateValue || \"\").toString().trim();\r\n                if (!raw) return \"\";\r\n\r\n                if (\/^\\d{4}-\\d{2}-\\d{2}$\/.test(raw)) return raw;\r\n\r\n                const isoLoose = raw.match(\/^(\\d{4})-(\\d{1,2})-(\\d{1,2})$\/);\r\n                if (isoLoose) {\r\n                    const y = Number(isoLoose[1]);\r\n                    const m = Number(isoLoose[2]);\r\n                    const d = Number(isoLoose[3]);\r\n                    if (m >= 1) {\r\n                        if (m <= 12) {\r\n                            if (d >= 1) {\r\n                                if (d <= 31) {\r\n                                    return `${y}-${String(m).padStart(2, \"0\")}-${String(d).padStart(2, \"0\")}`;\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n\r\n                const isoPrefix = raw.match(\/^(\\d{4}-\\d{2}-\\d{2})\/);\r\n                if (isoPrefix) return isoPrefix[1];\r\n\r\n                const slashParts = raw.match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})$\/);\r\n                if (slashParts) {\r\n                    \/\/ Treat slash format as DD\/MM\/YYYY to avoid locale ambiguity.\r\n                    const d = Number(slashParts[1]);\r\n                    const m = Number(slashParts[2]);\r\n                    const y = Number(slashParts[3]);\r\n                    if (m >= 1) {\r\n                        if (m <= 12) {\r\n                            if (d >= 1) {\r\n                                if (d <= 31) {\r\n                                    return `${y}-${String(m).padStart(2, \"0\")}-${String(d).padStart(2, \"0\")}`;\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n\r\n                const dashParts = raw.match(\/^(\\d{1,2})-(\\d{1,2})-(\\d{4})$\/);\r\n                if (dashParts) {\r\n                    const d = Number(dashParts[1]);\r\n                    const m = Number(dashParts[2]);\r\n                    const y = Number(dashParts[3]);\r\n                    if (m >= 1) {\r\n                        if (m <= 12) {\r\n                            if (d >= 1) {\r\n                                if (d <= 31) {\r\n                                    return `${y}-${String(m).padStart(2, \"0\")}-${String(d).padStart(2, \"0\")}`;\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n\r\n                return \"\";\r\n            }\r\n\r\n            function getTodayIsoDate() {\r\n                const today = new Date();\r\n                const y = today.getFullYear();\r\n                const m = String(today.getMonth() + 1).padStart(2, \"0\");\r\n                const d = String(today.getDate()).padStart(2, \"0\");\r\n                return `${y}-${m}-${d}`;\r\n            }\r\n\r\n            function getDepartDateDefault(dateValue) {\r\n                const todayIso = getTodayIsoDate();\r\n                const isoDate = normalizeToIsoDate(dateValue);\r\n                if (!isoDate) return todayIso;\r\n                return isoDate < todayIso ? todayIso : isoDate;\r\n            }\r\n\r\n            function addDaysToIsoDate(isoDate, days) {\n                const parts = normalizeToIsoDate(isoDate).split(\"-\");\n                if (parts.length !== 3) return \"\";\n\n                const date = new Date(Number(parts[0]), Number(parts[1]) - 1, Number(parts[2]));\r\n                date.setDate(date.getDate() + days);\r\n\r\n                const y = date.getFullYear();\r\n                const m = String(date.getMonth() + 1).padStart(2, \"0\");\r\n                const d = String(date.getDate()).padStart(2, \"0\");\n                return `${y}-${m}-${d}`;\n            }\n\n            function isoDateToLocalDate(isoDate) {\n                const parts = normalizeToIsoDate(isoDate).split(\"-\");\n                if (parts.length !== 3) return null;\n\n                return new Date(Number(parts[0]), Number(parts[1]) - 1, Number(parts[2]));\n            }\n\n            function setDepartDateValue(inputEl, dateValue) {\n                const isoDate = getDepartDateDefault(dateValue);\n                inputEl.min = getTodayIsoDate();\n\n                if (inputEl._flatpickr) {\n                    inputEl._flatpickr.set(\"minDate\", isoDateToLocalDate(getTodayIsoDate()));\n                    inputEl._flatpickr.setDate(isoDateToLocalDate(isoDate), false);\n                }\n\n                inputEl.value = isoDate;\n                return isoDate;\n            }\n\r\n            function setReturnDateValue(inputEl, dateValue, departIsoDate) {\r\n                const isoDate = normalizeToIsoDate(dateValue);\n                const minDate = normalizeToIsoDate(departIsoDate) || getTodayIsoDate();\n                const maxDate = addDaysToIsoDate(minDate, 90);\n                let nextValue = \"\";\n\n                if (isoDate) {\n                    if (isoDate >= minDate) {\n                        if (isoDate <= maxDate) {\n                            nextValue = isoDate;\n                        }\n                    }\n                }\n\n                inputEl.min = minDate;\n                inputEl.max = maxDate;\n\n                if (inputEl._flatpickr) {\n                    inputEl._flatpickr.set(\"minDate\", isoDateToLocalDate(minDate));\n                    inputEl._flatpickr.set(\"maxDate\", isoDateToLocalDate(maxDate));\n                    if (nextValue) {\n                        inputEl._flatpickr.setDate(isoDateToLocalDate(nextValue), false);\n                    } else {\n                        inputEl._flatpickr.clear(false);\n                    }\n                }\r\n\n                inputEl.value = nextValue;\n                return nextValue;\n            }\n\r\n            function formatDateForDisplay(dateValue) {\r\n                const isoDate = normalizeToIsoDate(dateValue);\r\n                if (!isoDate) return \"\";\r\n                const parts = isoDate.split(\"-\");\r\n                const y = parts[0];\r\n                const m = parts[1];\r\n                const d = parts[2];\r\n                return `${d}-${m}-${y}`;\r\n            }\r\n\r\n            function formatDateForQuery(dateValue) {\r\n                const isoDate = normalizeToIsoDate(dateValue);\r\n                if (!isoDate) return \"\";\r\n                const parts = isoDate.split(\"-\");\r\n                const y = parts[0];\r\n                const m = parts[1];\r\n                const d = parts[2];\r\n                return `${d}-${m}-${y}`;\r\n            }\r\n\r\n            function syncFromDateQueryField() {\r\n                const fromDateEl = document.getElementById(\"fromDate\");\r\n                const fromDateQueryEl = document.getElementById(\"fromDateQuery\");\r\n                if (!fromDateEl || !fromDateQueryEl) return;\r\n                fromDateQueryEl.value = formatDateForQuery(fromDateEl.value);\r\n            }\r\n\r\n            function syncToDateQueryField() {\r\n                const toDateEl = document.getElementById(\"toDate\");\r\n                const toDateQueryEl = document.getElementById(\"toDateQuery\");\r\n                if (!toDateEl || !toDateQueryEl) return;\r\n                toDateQueryEl.value = formatDateForQuery(toDateEl.value);\r\n            }\r\n\r\n            function syncDateDisplay(dateId) {\r\n                const source = document.getElementById(dateId);\r\n                const display = document.getElementById(`${dateId}Display`);\r\n                if (!source) return;\r\n\r\n                const normalized = normalizeToIsoDate(source.value);\r\n                if (normalized) {\r\n                    if (source.value !== normalized) {\r\n                        source.value = normalized;\r\n                    }\r\n                }\r\n\r\n                if (display) {\r\n                    const formatted = formatDateForDisplay(source.value);\r\n                    if (display.tagName) {\r\n                        if (display.tagName.toLowerCase() === \"input\") {\r\n                            display.value = formatted;\r\n                        } else {\r\n                            display.textContent = formatted;\r\n                        }\r\n                    } else {\r\n                        display.textContent = formatted;\r\n                    }\r\n                }\r\n\r\n                if (dateId === \"toDate\") {\r\n                    checkReturnDateField();\r\n                }\r\n            }\r\n\r\n            function syncFloatingLabelState() {\r\n                ['departFrom', 'departTo', 'fromDate', 'toDate'].forEach((id) => {\r\n                    const inputEl = document.getElementById(id);\r\n                    if (!inputEl) return;\r\n                    const wrap = inputEl.closest('.input-wrap');\r\n                    if (!wrap) return;\r\n\r\n                    let currentValue = (inputEl.value || '').trim();\r\n                    if (!currentValue) {\r\n                        if (id === 'fromDate' || id === 'toDate') {\r\n                            const displayEl = document.getElementById(`${id}Display`);\r\n                            let displayText = '';\r\n                            if (displayEl) {\r\n                                if (displayEl.tagName) {\r\n                                    if (displayEl.tagName.toLowerCase() === \"input\") {\r\n                                        displayText = displayEl.value || '';\r\n                                    } else {\r\n                                        displayText = displayEl.textContent || '';\r\n                                    }\r\n                                } else {\r\n                                    displayText = displayEl.textContent || '';\r\n                                }\r\n                            }\r\n                            currentValue = displayText.trim();\r\n                        }\r\n                    }\r\n\r\n                    if (currentValue !== '') {\r\n                        wrap.classList.add('has-value');\r\n                    } else {\r\n                        wrap.classList.remove('has-value');\r\n                    }\r\n                });\r\n            }\r\n\r\n            function checkReturnDateField() {\r\n                if (!returnDateInput || !clearBtn) return;\r\n                if (returnDateInput.value) {\r\n                    clearBtn.classList.remove(\"hidden\");\r\n                    clearBtn.classList.add(\"is-visible\");\r\n                } else {\r\n                    clearBtn.classList.add(\"hidden\");\r\n                    clearBtn.classList.remove(\"is-visible\");\r\n                }\r\n            }\r\n\r\n            function syncReturnDateRangeFromDepart() {\r\n                if (!returnDateInput || !fromDateInput) return;\r\n                setReturnDateValue(returnDateInput, returnDateInput.value, fromDateInput.value);\r\n                syncDateDisplay('toDate');\r\n                checkReturnDateField();\r\n                syncToDateQueryField();\r\n            }\r\n\r\n            window.addEventListener(\"DOMContentLoaded\", () => {\r\n                syncDateDisplay('fromDate');\r\n                syncDateDisplay('toDate');\r\n                checkReturnDateField();\r\n                syncFloatingLabelState();\r\n                syncFromDateQueryField();\r\n            });\r\n            if (fromDateInput) {\r\n                fromDateInput.addEventListener(\"input\", () => { syncDateDisplay('fromDate'); syncFloatingLabelState(); });\r\n                fromDateInput.addEventListener(\"change\", () => { syncDateDisplay('fromDate'); syncFloatingLabelState(); });\r\n                fromDateInput.addEventListener(\"input\", syncFromDateQueryField);\r\n                fromDateInput.addEventListener(\"change\", syncFromDateQueryField);\r\n                fromDateInput.addEventListener(\"input\", syncReturnDateRangeFromDepart);\r\n                fromDateInput.addEventListener(\"change\", syncReturnDateRangeFromDepart);\r\n            }\r\n            if (returnDateInput) {\r\n                returnDateInput.addEventListener(\"input\", () => { syncDateDisplay('toDate'); checkReturnDateField(); syncFloatingLabelState(); });\r\n                returnDateInput.addEventListener(\"change\", () => { syncDateDisplay('toDate'); checkReturnDateField(); syncFloatingLabelState(); });\r\n                returnDateInput.addEventListener(\"input\", syncToDateQueryField);\r\n                returnDateInput.addEventListener(\"change\", syncToDateQueryField);\r\n            }\r\n\r\n            ['departFrom', 'departTo', 'fromDate', 'toDate'].forEach((id) => {\r\n                const inputEl = document.getElementById(id);\r\n                if (!inputEl) return;\r\n                inputEl.addEventListener('input', syncFloatingLabelState);\r\n                inputEl.addEventListener('change', syncFloatingLabelState);\r\n                inputEl.addEventListener('blur', syncFloatingLabelState);\r\n            });\r\n            function mountDropdownPortal(inputId, dropdownId, alignRight = false) {\r\n                const inputEl = document.getElementById(inputId);\r\n                const dropdownEl = document.getElementById(dropdownId);\r\n                if (!inputEl || !dropdownEl || dropdownEl.dataset.portaled === '1') return;\r\n\r\n                document.body.appendChild(dropdownEl);\r\n                dropdownEl.dataset.portaled = '1';\r\n                dropdownEl.style.position = 'fixed';\r\n                dropdownEl.style.zIndex = window.matchMedia('(max-width: 767px)').matches ? '9500' : '9110';\r\n\r\n                let rafId = null;\r\n\r\n                function placeDropdown() {\r\n                    if (dropdownEl.style.display === 'none') return;\r\n\r\n                    const rect = inputEl.getBoundingClientRect();\r\n                    const viewportWidth = window.innerWidth;\r\n                    const isMobile = viewportWidth < 768;\r\n                    dropdownEl.style.zIndex = isMobile ? '9500' : '9110';\r\n                    const preferred = isMobile ? rect.width : Math.max(rect.width, 416);\r\n                    const width = Math.min(preferred, viewportWidth - 16);\r\n\r\n                    let left = alignRight ? rect.right - width : rect.left;\r\n                    left = Math.max(8, Math.min(left, viewportWidth - width - 8));\r\n\r\n                    dropdownEl.style.width = `${width}px`;\r\n                    dropdownEl.style.left = `${left}px`;\r\n                    dropdownEl.style.top = `${rect.bottom + 4}px`;\r\n                    dropdownEl.style.maxHeight = '280px';\r\n                }\r\n\r\n                function tick() {\r\n                    placeDropdown();\r\n                    if (dropdownEl.style.display !== 'none') {\r\n                        rafId = requestAnimationFrame(tick);\r\n                    } else {\r\n                        rafId = null;\r\n                    }\r\n                }\r\n\r\n                function startTracking() {\r\n                    placeDropdown();\r\n                    if (rafId === null) {\r\n                        rafId = requestAnimationFrame(tick);\r\n                    }\r\n                }\r\n\r\n                ['focus', 'click', 'input', 'keydown'].forEach((evt) => {\r\n                    inputEl.addEventListener(evt, () => setTimeout(startTracking, 0));\r\n                });\r\n\r\n                window.addEventListener('resize', startTracking, { passive: true });\r\n                window.addEventListener('scroll', startTracking, { passive: true, capture: true });\r\n\r\n                const observer = new MutationObserver(() => {\r\n                    if (dropdownEl.style.display !== 'none') {\r\n                        startTracking();\r\n                    }\r\n                });\r\n                observer.observe(dropdownEl, { attributes: true, attributeFilter: ['style', 'class'] });\r\n\r\n                document.addEventListener('click', (event) => {\r\n                    if (!inputEl.contains(event.target)) {\r\n                        if (!dropdownEl.contains(event.target)) {\r\n                            dropdownEl.style.display = 'none';\r\n                        }\r\n                    }\r\n                });\r\n            }\r\n\r\n            mountDropdownPortal('departFrom', 'dropdown', false);\r\n            mountDropdownPortal('departTo', 'dropdown2', false);\r\n\r\n            syncFloatingLabelState();\r\n            function syncDateViewsFromAnySource() {\r\n                syncDateDisplay('fromDate');\r\n                syncDateDisplay('toDate');\r\n                checkReturnDateField();\r\n                syncFloatingLabelState();\r\n                syncFromDateQueryField();\r\n                syncToDateQueryField();\r\n            }\r\n\r\n            function restoreSearchTripHistory() {\r\n                const fromDateEl = document.getElementById(\"fromDate\");\r\n                const toDateEl = document.getElementById(\"toDate\");\r\n                const fromDateFallback = fromDateEl ? (fromDateEl.value || \"\") : \"\";\r\n                const toDateFallback = toDateEl ? (toDateEl.value || \"\") : \"\";\r\n                const fromDateValue = localStorage.getItem(\"fromDate\") || fromDateFallback || \"\";\r\n                const toDateValue = localStorage.getItem(\"toDate\") || toDateFallback || \"\";\r\n                let departIsoDate = getDepartDateDefault(fromDateValue);\r\n\r\n                if (fromDateEl) {\n                    departIsoDate = setDepartDateValue(fromDateEl, fromDateValue);\n                    localStorage.setItem(\"fromDate\", formatDateForQuery(departIsoDate));\n                }\n                if (toDateEl) {\n                    const returnIsoDate = setReturnDateValue(toDateEl, toDateValue, departIsoDate);\n                    if (returnIsoDate) {\n                        localStorage.setItem(\"toDate\", formatDateForQuery(returnIsoDate));\n                    } else {\n                        localStorage.removeItem(\"toDate\");\n                    }\n                }\n\r\n                syncDateViewsFromAnySource();\r\n\r\n                if (!localStorage.getItem(\"from\")) return;\r\n\r\n                document.getElementById(\"from\").value = localStorage.getItem(\"from\");\r\n                document.getElementById(\"fromId\").value = localStorage.getItem(\"fromId\");\r\n                document.getElementById(\"departFrom\").value = localStorage.getItem(\"departFrom\");\r\n                document.getElementById(\"departFrom\").setAttribute(\"data-id\", localStorage.getItem(\"fromId\"));\r\n                document.getElementById(\"departFrom\").setAttribute(\"data-name\", localStorage.getItem(\"from\"));\r\n\r\n                document.getElementById(\"to\").value = localStorage.getItem(\"to\");\r\n                document.getElementById(\"toId\").value = localStorage.getItem(\"toId\");\r\n                document.getElementById(\"departTo\").value = localStorage.getItem(\"departTo\");\r\n                document.getElementById(\"departTo\").setAttribute(\"data-id\", localStorage.getItem(\"toId\"));\r\n                document.getElementById(\"departTo\").setAttribute(\"data-name\", localStorage.getItem(\"to\"));\r\n                \/\/ Preserve \"To\" view while destination list refreshes.\r\n                if (typeof val === \"function\") {\r\n                    val(accessToken, false, true, true);\r\n                } else {\r\n                    setTimeout(() => {\r\n                        if (typeof val === \"function\") {\r\n                            val(accessToken, false, true, true);\r\n                        }\r\n                    }, 250);\r\n                }\r\n                syncFloatingLabelState();\r\n                positionSwapBtn();\r\n            }\r\n\r\n            restoreSearchTripHistory();\r\n            document.documentElement.classList.add('labels-ready');\r\n            window.addEventListener('DOMContentLoaded', () => {\r\n                restoreSearchTripHistory();\r\n                syncDateViewsFromAnySource();\r\n                setTimeout(syncDateViewsFromAnySource, 120);\r\n                setTimeout(syncDateViewsFromAnySource, 400);\r\n                positionSwapBtn();\r\n            });\r\n\r\n            const searchTripFormEl = document.getElementById('searchTripForm');\r\n            if (searchTripFormEl) searchTripFormEl.addEventListener('submit', function (e) {\r\n                \/\/ Prevent the form from submitting by default\r\n                e.preventDefault();\r\n                syncFromDateQueryField();\r\n                syncToDateQueryField();\r\n\r\n                \/\/Save user input\r\n                localStorage.setItem(\"from\", document.getElementById(\"from\").value);\r\n                localStorage.setItem(\"fromId\", document.getElementById(\"fromId\").value);\r\n                localStorage.setItem(\"to\", document.getElementById(\"to\").value);\r\n                localStorage.setItem(\"toId\", document.getElementById(\"toId\").value);\r\n                localStorage.setItem(\"departFrom\", document.getElementById(\"departFrom\").value);\r\n                localStorage.setItem(\"departTo\", document.getElementById(\"departTo\").value);\r\n                localStorage.setItem(\"fromDate\", formatDateForQuery(document.getElementById(\"fromDate\").value));\r\n                localStorage.setItem(\"toDate\", formatDateForQuery(document.getElementById(\"toDate\").value));\r\n\r\n                \/\/ Get the input value\r\n                const departInput = document.getElementById('departFrom');\r\n                const departError = document.getElementById('departError');\r\n                const returnInput = document.getElementById('departTo');\r\n                const returnError = document.getElementById('returnError');\r\n                const dateInput = document.getElementById('fromDate');\r\n                const dateDisplayInput = document.getElementById('fromDateDisplay');\r\n                const dateError = document.getElementById('dateError');\r\n                const btn = document.getElementById('searchBtn');\r\n\r\n                \/\/ Validation\r\n                if (departInput.value.trim() === '' || !departInput.hasAttribute(\"data-id\") || !returnInput\r\n                    .hasAttribute(\"data-id\") || returnInput.value.trim() === '' || dateInput.value.trim() === '') {\r\n                    if (departInput.value.trim() === '' || !departInput.hasAttribute(\"data-id\")) {\r\n                        departError.classList.remove('hidden');\r\n                        departInput.classList.add('border-red-500');\r\n                    } else {\r\n                        departError.classList.add('hidden');\r\n                        departInput.classList.remove('border-red-500');\r\n                    }\r\n\r\n                    if (returnInput.value.trim() === '' || !returnInput.hasAttribute(\"data-id\")) {\r\n                        returnError.classList.remove('hidden');\r\n                        returnInput.classList.add('border-red-500');\r\n                    } else {\r\n                        returnError.classList.add('hidden');\r\n                        returnInput.classList.remove('border-red-500');\r\n                    }\r\n\r\n                    if (dateInput.value.trim() === '') {\r\n                        dateError.classList.remove('hidden');\r\n                        dateDisplayInput.classList.add('border-red-500');\r\n                    } else {\r\n                        dateError.classList.add('hidden');\r\n                        dateDisplayInput.classList.remove('border-red-500');\r\n                    }\r\n                } else {\r\n                    btn.className = `search-submit search-submit-docked search-submit-loading w-auto max-w-full mt-2 text-white focus:ring-4 focus:outline-none focus:ring-orange-400 font-semibold text-sm px-5 py-2.5 text-center inline-flex justify-center items-center transition-transform duration-200 shadow-lg disabled:cursor-not-allowed`;\r\n                    btn.innerHTML = `\r\n          <span class=\"flex justify-center\">\r\n            <svg class=\"animate-spin h-5 w-5 mr-2 text-white\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\r\n                <circle class=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\"><\/circle>\r\n                <path class=\"opacity-75\" fill=\"currentColor\" d=\"M4 12a8 8 0 018-8v4l3-3m-3 3L8 8m4-4a8 8 0 018 8h-4l3 3m-3-3L8 16m4 4a8 8 0 01-8-8h4l-3-3m3 3L16 8\"><\/path>\r\n            <\/svg>\r\n            Searching...\r\n          <\/span>\r\n          `;\r\n                    btn.disabled = true;\r\n\r\n                    e.target.submit();\r\n                }\r\n\r\n            });\r\n\r\n            window.addEventListener(\"pageshow\", e => {\r\n                const btn = document.getElementById('searchBtn');\r\n                if (btn) btn.disabled = false;\r\n                btn.className = `search-submit search-submit-docked w-full md:w-auto md:min-w-[11rem] mt-2 text-white\r\n                   focus:ring-4 focus:outline-none focus:ring-orange-300\r\n                   font-semibold text-sm px-5 py-2.5 text-center inline-flex justify-center items-center`;\r\n                btn.innerHTML = ` <i class=\"fa-solid fa-magnifying-glass mr-1\"><\/i>Search Bus`;\r\n                syncDateViewsFromAnySource();\r\n                setTimeout(syncDateViewsFromAnySource, 120);\r\n            });\r\n\r\n            function removeDateError() {\r\n                const dateInput = document.getElementById('fromDateDisplay');\r\n                const dateError = document.getElementById('dateError');\r\n\r\n                dateError.classList.add('hidden');\r\n                dateInput.classList.remove('border-red-500');\r\n            }\r\n\r\n            function validateField() {\r\n                var from = document.getElementById('departFrom').value;\r\n                var to = document.getElementById('departTo').value;\r\n\r\n                if (from === \"\" || to === \"\") {\r\n                    var notyf = new Notyf();\r\n                    notyf.error('Please input all required field!');\r\n                    return false; \/\/ Prevent form submission\r\n                }\r\n                return true;\r\n            }\r\n\r\n\r\n            const btn = document.getElementById(\"swapBtn\");\r\n            const searchTripGrid = document.getElementById(\"searchTripGrid\");\r\n            const fromInput = document.getElementById(\"departFrom\");\r\n            const toInput = document.getElementById(\"departTo\");\r\n            const hiddenFrom = document.getElementById(\"from\");\r\n            const hiddenFromId = document.getElementById(\"fromId\");\r\n            const hiddenTo = document.getElementById(\"to\");\r\n            const hiddenToId = document.getElementById(\"toId\");\r\n\r\n            function positionSwapBtn() {\r\n                const swapBtnEl = document.getElementById(\"swapBtn\");\r\n                const gridEl = document.getElementById(\"searchTripGrid\");\r\n                const fromEl = document.getElementById(\"departFrom\");\r\n                const toEl = document.getElementById(\"departTo\");\r\n\r\n                if (!swapBtnEl || !gridEl || !fromEl || !toEl) return;\r\n\r\n                const gridRect = gridEl.getBoundingClientRect();\r\n                const fromRect = fromEl.getBoundingClientRect();\r\n                const toRect = toEl.getBoundingClientRect();\r\n\r\n                const isStacked = Math.abs(fromRect.top - toRect.top) > 8;\r\n                const midpointX = isStacked\r\n                    ? ((fromRect.left + fromRect.right) \/ 2) - gridRect.left\r\n                    : ((fromRect.right + toRect.left) \/ 2) - gridRect.left;\r\n                const midpointY = isStacked\r\n                    ? ((fromRect.bottom + toRect.top) \/ 2) - gridRect.top\r\n                    : ((((fromRect.top + fromRect.bottom) \/ 2) + ((toRect.top + toRect.bottom) \/ 2)) \/ 2) - gridRect.top;\r\n\r\n                if (!Number.isFinite(midpointX) || !Number.isFinite(midpointY)) return;\r\n\r\n                swapBtnEl.style.left = Math.round(midpointX) + \"px\";\r\n                swapBtnEl.style.top = Math.round(midpointY) + \"px\";\r\n            }\r\n\r\n            function syncSearchTripViewFromState() {\r\n                const fromNameBase = hiddenFrom ? (hiddenFrom.value || \"\") : \"\";\r\n                const fromIdBase = hiddenFromId ? (hiddenFromId.value || \"\") : \"\";\r\n                const toNameBase = hiddenTo ? (hiddenTo.value || \"\") : \"\";\r\n                const toIdBase = hiddenToId ? (hiddenToId.value || \"\") : \"\";\r\n                const fromName = (fromNameBase || localStorage.getItem(\"from\") || \"\").trim();\r\n                const fromId = (fromIdBase || localStorage.getItem(\"fromId\") || \"\").trim();\r\n                const toName = (toNameBase || localStorage.getItem(\"to\") || \"\").trim();\r\n                const toId = (toIdBase || localStorage.getItem(\"toId\") || \"\").trim();\r\n\r\n                if (fromName) {\r\n                    fromInput.value = fromName;\r\n                    fromInput.setAttribute(\"data-name\", fromName);\r\n                }\r\n                if (fromId) {\r\n                    fromInput.setAttribute(\"data-id\", fromId);\r\n                }\r\n\r\n                if (toName) {\r\n                    toInput.value = toName;\r\n                    toInput.setAttribute(\"data-name\", toName);\r\n                }\r\n                if (toId) {\r\n                    toInput.setAttribute(\"data-id\", toId);\r\n                }\r\n                syncFloatingLabelState();\r\n            }\r\n\r\n            \/\/ Guard against async UI race on refresh.\r\n            window.addEventListener(\"load\", () => {\r\n                syncSearchTripViewFromState();\r\n                setTimeout(syncSearchTripViewFromState, 150);\r\n                setTimeout(syncSearchTripViewFromState, 450);\r\n                positionSwapBtn();\r\n            });\r\n            function settleSwapBtnPosition() {\r\n                positionSwapBtn();\r\n                requestAnimationFrame(positionSwapBtn);\r\n                setTimeout(positionSwapBtn, 40);\r\n                setTimeout(positionSwapBtn, 120);\r\n                setTimeout(positionSwapBtn, 260);\r\n                setTimeout(positionSwapBtn, 520);\r\n            }\r\n\r\n            window.addEventListener(\"resize\", settleSwapBtnPosition);\r\n            window.addEventListener(\"DOMContentLoaded\", settleSwapBtnPosition);\r\n            window.addEventListener(\"load\", settleSwapBtnPosition);\r\n            settleSwapBtnPosition();\r\n\r\n            function getSelection(inputEl, hiddenNameEl, hiddenIdEl) {\r\n                const inputDataName = inputEl ? (inputEl.getAttribute(\"data-name\") || \"\") : \"\";\r\n                const inputValue = inputEl ? (inputEl.value || \"\") : \"\";\r\n                const hiddenValue = hiddenNameEl ? (hiddenNameEl.value || \"\") : \"\";\r\n                const inputDataId = inputEl ? (inputEl.getAttribute(\"data-id\") || \"\") : \"\";\r\n                const hiddenIdValue = hiddenIdEl ? (hiddenIdEl.value || \"\") : \"\";\r\n                const name = (inputDataName || inputValue || hiddenValue || \"\").trim();\r\n                const id = (inputDataId || hiddenIdValue || \"\").trim();\r\n                return { name, id };\r\n            }\r\n\r\n            function setSelection(inputEl, hiddenNameEl, hiddenIdEl, name, id, storageNameKey, storageIdKey, storageInputKey) {\r\n                inputEl.value = name || \"\";\r\n                if (id) {\r\n                    inputEl.setAttribute(\"data-id\", id);\r\n                } else {\r\n                    inputEl.removeAttribute(\"data-id\");\r\n                }\r\n\r\n                if (name) {\r\n                    inputEl.setAttribute(\"data-name\", name);\r\n                } else {\r\n                    inputEl.removeAttribute(\"data-name\");\r\n                }\r\n\r\n                hiddenNameEl.value = name || \"\";\r\n                hiddenIdEl.value = id || \"\";\r\n\r\n                localStorage.setItem(storageNameKey, hiddenNameEl.value);\r\n                localStorage.setItem(storageIdKey, hiddenIdEl.value);\r\n                localStorage.setItem(storageInputKey, inputEl.value);\r\n                syncFloatingLabelState();\r\n            }\r\n\r\n            function applyToSelectionAfterRefresh(toSelection) {\r\n                setSelection(\r\n                    toInput,\r\n                    hiddenTo,\r\n                    hiddenToId,\r\n                    toSelection.name,\r\n                    toSelection.id,\r\n                    \"to\",\r\n                    \"toId\",\r\n                    \"departTo\"\r\n                );\r\n            }\r\n\r\n            if (btn) btn.addEventListener(\"click\", () => {\r\n                if (!fromInput || !toInput || !btn) return;\r\n\r\n                const fromSelection = getSelection(fromInput, hiddenFrom, hiddenFromId);\r\n                const toSelection = getSelection(toInput, hiddenTo, hiddenToId);\r\n\r\n                if (!fromSelection.name || !fromSelection.id || !toSelection.name || !toSelection.id) {\r\n                    (new Notyf()).error(\"Please choose valid From and To before swapping.\");\r\n                    return;\r\n                }\r\n\r\n                setSelection(\r\n                    fromInput,\r\n                    hiddenFrom,\r\n                    hiddenFromId,\r\n                    toSelection.name,\r\n                    toSelection.id,\r\n                    \"from\",\r\n                    \"fromId\",\r\n                    \"departFrom\"\r\n                );\r\n\r\n                setSelection(\r\n                    toInput,\r\n                    hiddenTo,\r\n                    hiddenToId,\r\n                    fromSelection.name,\r\n                    fromSelection.id,\r\n                    \"to\",\r\n                    \"toId\",\r\n                    \"departTo\"\r\n                );\r\n\r\n                \/\/ Refresh destination list for the new origin.\r\n                if (typeof val === \"function\") {\r\n                    val(accessToken, false, false, true);\r\n                }\r\n\r\n                \/\/ Re-apply destination selection after async refresh to avoid view\/data mismatch.\r\n                applyToSelectionAfterRefresh(fromSelection);\r\n                setTimeout(() => applyToSelectionAfterRefresh(fromSelection), 200);\r\n                setTimeout(() => applyToSelectionAfterRefresh(fromSelection), 600);\r\n\r\n                btn.classList.add(\"swap-pop\");\r\n                btn.addEventListener(\"animationend\", () => btn.classList.remove(\"swap-pop\"), {\r\n                    once: true\r\n                });\r\n            });\r\n        <\/script>\r\n\r\n            <\/body>\r\n<\/div>\r\n<\/div><\/section>\n<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group alignfull is-layout-constrained wp-container-core-group-is-layout-d1946f88 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0\">\n<h2 class=\"wp-block-heading has-x-large-font-size\">Destinasi popular<\/h2>\n\n\n\n<p>Destinasi perjalanan popular di laman kami<\/p>\n\n\n<p>[foogallery id=&#8221;2892&#8243;]<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-background-secondary-background-color has-background is-layout-constrained wp-container-core-group-is-layout-d1946f88 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0\">\n<div class=\"wp-block-columns is-style-clipIn is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-constrained wp-block-column-is-layout-constrained\" style=\"flex-basis:35%\">\n<div class=\"wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-fe9cc265 wp-block-group-is-layout-flex\">\n<h2 class=\"wp-block-heading has-x-large-font-size\">Terminal Bas Bersepadu<\/h2>\n<\/div>\n\n\n\n<p style=\"font-size:clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.435), 18px);\">Terminal bas bersepadu atas talian. Tanpa beratus. Tanpa pas masuk, hanya guna applikasi.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<div class=\"wp-block-group custom-width is-layout-constrained wp-block-group-is-layout-constrained\">\n<section id=\"g-ssnsjtk\" class=\"wp-block-gutentor-m9 section-g-ssnsjtk gutentor-module gutentor-module-form-wrapper\"><div class=\"grid-container\">[accordion_slider id=&#8221;1&#8243;]<\/div><\/section>\n\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull is-layout-constrained wp-container-core-group-is-layout-d1946f88 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0\">\n<div class=\"wp-block-group is-content-justification-space-between is-nowrap is-layout-flex wp-container-core-group-is-layout-cb46ffcb wp-block-group-is-layout-flex\">\n<h2 class=\"wp-block-heading has-x-large-font-size\">Bus Operators<\/h2>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-outline is-style-outline--3\"><a class=\"wp-block-button__link wp-element-button\" href=\"\/ms\/bus-operator\/\" target=\"_blank\" rel=\"noreferrer noopener\">Lihat Semua<\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<p>Syarikat bas yang bekerjasama dengan kami demi pengalaman terbaik untuk anda<\/p>\n\n\n\t\n\t\t<div id=\"gs_logo_area_2\" data-shortcode-id=\"2\" class=\"gs_logo_area gs_logo_area_2 slider1\" data-options='{\"logo_per_page\":\"6\"}' style=\"opacity: 0; visibility: hidden;\">\n\t\t\t<div class=\"gs_logo_area--inner\">\n\n\t\t\t\t<!-- Category Filters - New (Global) -->\n\t\t\t\t\t\n\t\t\t\t\n<div class=\"gs_logo_container gs_carousel_swiper gs_logo_fix_height_and_center\" data-carousel-config='{\"direction\":\"horizontal\",\"speed\":800,\"isAutoplay\":true,\"autoplayDelay\":2000,\"loop\":true,\"pauseOnHover\":true,\"ticker\":false,\"navs\":false,\"navs_pos\":\"bottom\",\"dots\":false,\"dynamic_dots\":true,\"slideSpace\":12,\"slidesPerGroup\":1,\"desktopLogos\":5,\"tabletLogos\":3,\"mobileLogos\":2,\"reverseDirection\":false}'>\n\n\t\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/kiffah-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"86\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-kiffah.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Kiffah Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-kiffah.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-kiffah-18x5.png 18w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Kiffah Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/zaim-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"292\" height=\"134\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-zaim-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Zaim Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-zaim-Express.png 292w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-zaim-Express-18x8.png 18w\" sizes=\"auto, (max-width: 292px) 100vw, 292px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Zaim Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/utama-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-Utama-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Utama Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-Utama-Express.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-Utama-Express-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Utama Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/transmalaya\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-transmalaya-ekspres.webp\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"TransMalaya\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-transmalaya-ekspres.webp 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-transmalaya-ekspres-18x7.webp 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">TransMalaya<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/teraju-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"90\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-teraju-300x90.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Teraju Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-teraju-300x90.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-teraju-18x5.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-teraju.png 417w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Teraju Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/suasana-holiday\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_suasana.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Suasana Holiday\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_suasana.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_suasana-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Suasana Holiday<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/sp-bumi\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"138\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_sp-bumi-300x138.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"SP Bumi\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_sp-bumi-300x138.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_sp-bumi-768x354.png 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_sp-bumi-18x8.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo_sp-bumi.png 850w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">SP Bumi<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/sani-ukt-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Sani UKT Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Sani UKT Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/sani-hkps-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Sani HKPS Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-sani-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Sani HKPS Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/lexojaya-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-lexojaya.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Lexojaya\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-lexojaya.png 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-lexojaya-18x7.png 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Lexojaya<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/jasmine-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-jasmine.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Jasmine Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-jasmine.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/04\/logo-jasmine-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Jasmine Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/res2-ekspres\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"157\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Res-2-ekspres--300x157.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Res2 Ekspres\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Res-2-ekspres--300x157.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Res-2-ekspres--18x9.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Res-2-ekspres-.png 310w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Res2 Ekspres<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/queen-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"292\" height=\"134\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Queen-Express.jpeg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Queen Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Queen-Express.jpeg 292w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Queen-Express-18x8.jpeg 18w\" sizes=\"auto, (max-width: 292px) 100vw, 292px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Queen Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/prisma-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/prisma.webp\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Prisma Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/prisma.webp 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/prisma-18x7.webp 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Prisma Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/pancaran-matahari-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"225\" height=\"225\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Pancaran-Matahari-.jpeg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Pancaran Matahari Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Pancaran-Matahari-.jpeg 225w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Pancaran-Matahari--150x150.jpeg 150w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/Pancaran-Matahari--12x12.jpeg 12w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Pancaran Matahari Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/naza-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/NAZA.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Naza Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/NAZA.png 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/NAZA-18x7.png 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Naza Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/myxpress\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"133\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/MyXpress-300x133.jpeg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"MYEXPRESS\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/MyXpress-300x133.jpeg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/MyXpress-18x8.jpeg 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/MyXpress.jpeg 337w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">MYEXPRESS<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"https:\/\/eticketing.my\/ms\/bus-partners\/mutiara-luxe\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"115\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/mutiara-luxe-300x115.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Mutiara Luxe\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/mutiara-luxe-300x115.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/mutiara-luxe-18x7.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2026\/01\/mutiara-luxe.png 362w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Mutiara Luxe<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/lienadia-ekspress\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/lienadia-express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Lienadia Ekspress\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/lienadia-express.png 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/lienadia-express-18x7.png 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Lienadia Ekspress<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/jasa-pelangi-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/jasa-pelangi.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Jasa Pelangi Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/jasa-pelangi.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/jasa-pelangi-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Jasa Pelangi Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/ekspres-musafir\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/musafir-exp.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Ekspres Musafir\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/musafir-exp.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/11\/musafir-exp-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Ekspres Musafir<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/edaran-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"250\" height=\"69\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Edaran-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Edaran Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Edaran-Express.png 250w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Edaran-Express-18x5.png 18w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Edaran Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/destinasi-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Destinasi-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Destinasi Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Destinasi-Express.png 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Destinasi-Express-18x7.png 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Destinasi Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/darul-naim-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"250\" height=\"69\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Naim-Express.jpg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Darul Naim Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Naim-Express.jpg 250w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Naim-Express-18x5.jpg 18w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Darul Naim Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/darul-iman-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Iman-Express.jpeg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Darul Iman Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Iman-Express.jpeg 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Darul-Iman-Express-18x7.jpeg 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Darul Iman Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/cosmic-express-2\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cosmic-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Cosmic Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cosmic-Express.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cosmic-Express-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Cosmic Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/cepat-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cepat-Express.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Cepat Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cepat-Express.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Cepat-Express-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Cepat Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/asia-jaya\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"80\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Asia-Jaya-Travel-Tours-Sdn-Bhd.jpeg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Asia Jaya Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Asia-Jaya-Travel-Tours-Sdn-Bhd.jpeg 200w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Asia-Jaya-Travel-Tours-Sdn-Bhd-18x7.jpeg 18w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Asia Jaya Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/arwana-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Arwana-Express-Bus-Services.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Arwana Express Bus Services\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Arwana-Express-Bus-Services.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Arwana-Express-Bus-Services-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Arwana Express Bus Services<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/adik-beradik-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Adik-Beradik-Express-Bus-Service.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Adik Beradik Express Bus Service\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Adik-Beradik-Express-Bus-Service.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/Adik-Beradik-Express-Bus-Service-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Adik Beradik Express Bus Service<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/adam-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"100\" height=\"40\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/ADAM.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Adam Express Bus Services\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/ADAM.png 100w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/10\/ADAM-18x7.png 18w\" sizes=\"auto, (max-width: 100px) 100vw, 100px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Adam Express Bus Services<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/wnqrpass\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"152\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket-300x152.jpg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Instant QR E-Ticket\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket-300x152.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket-1024x517.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket-768x388.jpg 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket-18x9.jpg 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/3.-Instant-QR-E-ticket.jpg 1154w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Instant QR E-Ticket<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"152\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees-300x152.jpg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"No Extra Fees\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees-300x152.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees-1024x517.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees-768x388.jpg 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees-18x9.jpg 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/2.-No-extra-fees.jpg 1154w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">No Extra Fees<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/wnapps\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"152\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live-300x152.jpg\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"eTicketing.my App Is Now Live!\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live-300x152.jpg 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live-1024x517.jpg 1024w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live-768x388.jpg 768w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live-18x9.jpg 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/02\/1.-eTicketing.my-App-Live.jpg 1154w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">eTicketing.my App Is Now Live!<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/konsortium-express-tours\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"150\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/konsortium-express-tours.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Konsortium Express &amp; Tours\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/konsortium-express-tours.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/konsortium-express-tours-18x9.png 18w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Konsortium Express &amp; Tours<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/707-inc\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"150\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/707-inc-logo.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"707 Inc.\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/707-inc-logo.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/01\/707-inc-logo-18x9.png 18w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">707 Inc.<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/mayang-sari\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"64\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/mayang-1-300x64.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Mayang Sari\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/mayang-1-300x64.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/mayang-1-18x4.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/mayang-1.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Mayang Sari<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/ekspress-perdana\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"65\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/express-1-300x65.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Ekspress Perdana\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/express-1-300x65.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/express-1-18x4.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/express-1.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Ekspress Perdana<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/ekspres-mutiara-2\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"94\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/emutiara-1-300x94.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Konsortium e-Mutiara\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/emutiara-1-300x94.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/emutiara-1-18x6.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/emutiara-1.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Konsortium e-Mutiara<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/maraliner\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"88\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/maraliner-1-300x88.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Maraliner\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/maraliner-1-300x88.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/maraliner-1-18x5.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/maraliner-1.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Maraliner<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/cosmic-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"90\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Cosmic-Express-2-300x90.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Cosmic Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Cosmic-Express-2-300x90.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Cosmic-Express-2-18x5.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/Cosmic-Express-2.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Cosmic Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\n\t\t\t<div class=\"gs_logo_single--wrapper\">\n\t\t\t\t<div class=\"gs_logo_single\">\n\n\t\t\t\t\t<!-- Logo Img -->\n\t\t\t\t\t<a href=\"\/ms\/bus-partners\/sani-express\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"98\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/sani-1-300x98.png\" class=\"tt-placement-top tt-bgcolor-one-%23ff5f6d tt-bgcolor-two-%23ffc371 tt-textcolor-%23fff gs-logo--img wp-post-image\" alt=\"\" title=\"Sani Express\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/sani-1-300x98.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/sani-1-18x6.png 18w, https:\/\/eticketing.my\/wp-content\/uploads\/2024\/07\/sani-1.png 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t\t\t<!-- Logo Title -->\n\t\t\t\t\t<h3 class=\"gs_logo_title\">Sani Express<\/h3>\t\t\t\t\t\n\t\t\t\t\t<!-- Logo Category -->\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\t\t\n\t\n<\/div>\n\t\t\t\t<!-- Pagination -->\n\t\t\t\t\n\t\t\t<\/div>\n\t\t<\/div>\n\t\n\t\t<style>#gs_logo_area_2:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container{margin-left:-6px}#gs_logo_area_2:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container{margin-right:-6px}#gs_logo_area_2:not(.verticaltickerdown):not(.verticalticker) .gs_logo_single--wrapper{padding:6px}#gs_logo_area_2 ul.gs-logo-filter-cats{text-align:center!important}#gs_logo_area_2 .gs_logo_single--wrapper{width:20%}@media (max-width:1023px){#gs_logo_area_2 .gs_logo_single--wrapper{width:33.333333333333%}}@media (max-width:767px){#gs_logo_area_2 .gs_logo_single--wrapper{width:50%}}<\/style>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-background-secondary-background-color has-background is-layout-constrained wp-container-core-group-is-layout-d1946f88 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0\">\n<div class=\"wp-block-group is-content-justification-space-between is-nowrap is-layout-flex wp-container-core-group-is-layout-cb46ffcb wp-block-group-is-layout-flex\">\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-5aaafb2c wp-block-group-is-layout-flex\" style=\"margin-bottom:0\">\n<p class=\"has-text-align-center\"><strong>\u23af<\/strong>\u23af<strong>\u23af<\/strong>\u23af<strong>\u23af<\/strong>\u23af<strong>\u23af\u23af<\/strong>\u23af<\/p>\n\n\n\n<p class=\"has-text-align-center has-poppins-font-family has-medium-font-size\" style=\"letter-spacing:8px\">TEROKA LAGI TAWARAN MENARIK<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-outline is-style-outline--4\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/goticket.my\/\" target=\"_blank\" rel=\"noreferrer noopener\">Lihat lagi<\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<\/div>\n<\/main>\n\n\n<footer class=\"wp-block-template-part\">\n<div class=\"wp-block-group has-background-color has-text-color has-background is-layout-constrained wp-container-core-group-is-layout-e10ca314 wp-block-group-is-layout-constrained\" style=\"background-color:#eae9e9;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30);font-size:12px\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-e3d1c41b wp-block-column-is-layout-flow\" style=\"flex-basis:25%\">\n<h2 class=\"wp-block-heading has-primary-color has-text-color has-link-color has-normal-font-size wp-elements-65914d61220d10b95fe62c208b7e518d\"><strong>On The Go<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list has-primary-color has-text-color has-link-color has-small-font-size wp-elements-eb70fae9186c4b0af91ade714b0aa039\">\n<li><a href=\"https:\/\/eticketing.my\/ms\/checkbooking\/\" target=\"_blank\" rel=\"noreferrer noopener\">Your Booking<\/a><\/li>\n\n\n\n<li><a href=\"#downloadAppSection\">Get The Apps<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/eticketing.my\/ms\/blog\/\" target=\"_blank\" rel=\"noreferrer noopener\">Blog<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-e3d1c41b wp-block-column-is-layout-flow\" style=\"flex-basis:25%\">\n<h2 class=\"wp-block-heading has-primary-color has-text-color has-link-color has-normal-font-size wp-elements-8c275bb07b02fd0fdfe41f548271e5ea\"><strong>In The Office<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list has-primary-color has-text-color has-link-color has-small-font-size wp-elements-dfd15ea828fcd50cc672ca23316a3ea2\">\n<li><a href=\"https:\/\/eticketing.my\/ms\/contact-us\/\" target=\"_blank\" rel=\"noreferrer noopener\">Hubungi Kami<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/eticketing.my\/ms\/terms\/\" target=\"_blank\" rel=\"noreferrer noopener\">Terma dan <\/a><a href=\"https:\/\/eticketing.my\/ms\/terms-and-conditions\/\" data-type=\"link\" data-id=\"https:\/\/eticketing.my\/terms-and-conditions\/\" target=\"_blank\" rel=\"noreferrer noopener\">Syarat<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/eticketing.my\/ms\/privacy-policy\/\" target=\"_blank\" rel=\"noreferrer noopener\">Dasar Privasi<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:25%\">\n<h3 class=\"wp-block-heading has-text-align-left has-primary-color has-text-color has-link-color has-normal-font-size wp-elements-efd87d8afe9f5d614fafe2c3c233fcb8\"><strong>Need Our Help<\/strong><\/h3>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\" style=\"margin-top:var(--wp--preset--spacing--10)\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-secondary-color has-text-color has-background has-link-color wp-element-button\" style=\"background:linear-gradient(135deg,rgb(255,255,255) 0%,rgb(224,223,225) 99%)\">Help Centre<\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:25%\">\n<h3 class=\"wp-block-heading has-text-align-left has-primary-color has-text-color has-link-color has-normal-font-size wp-elements-8d7cff9fddbae836bf566723a48c8723\"><strong>Follow Us<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-social-links has-small-icon-size has-icon-color is-style-default wp-container-content-9cfa9a5a is-horizontal is-content-justification-left is-layout-flex wp-container-core-social-links-is-layout-94c8c942 wp-block-social-links-is-layout-flex\" style=\"margin-top:var(--wp--preset--spacing--10);margin-right:0;margin-left:0\"><li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-tiktok has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.tiktok.com\/@eticketing.my\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16.708 0.027c1.745-0.027 3.48-0.011 5.213-0.027 0.105 2.041 0.839 4.12 2.333 5.563 1.491 1.479 3.6 2.156 5.652 2.385v5.369c-1.923-0.063-3.855-0.463-5.6-1.291-0.76-0.344-1.468-0.787-2.161-1.24-0.009 3.896 0.016 7.787-0.025 11.667-0.104 1.864-0.719 3.719-1.803 5.255-1.744 2.557-4.771 4.224-7.88 4.276-1.907 0.109-3.812-0.411-5.437-1.369-2.693-1.588-4.588-4.495-4.864-7.615-0.032-0.667-0.043-1.333-0.016-1.984 0.24-2.537 1.495-4.964 3.443-6.615 2.208-1.923 5.301-2.839 8.197-2.297 0.027 1.975-0.052 3.948-0.052 5.923-1.323-0.428-2.869-0.308-4.025 0.495-0.844 0.547-1.485 1.385-1.819 2.333-0.276 0.676-0.197 1.427-0.181 2.145 0.317 2.188 2.421 4.027 4.667 3.828 1.489-0.016 2.916-0.88 3.692-2.145 0.251-0.443 0.532-0.896 0.547-1.417 0.131-2.385 0.079-4.76 0.095-7.145 0.011-5.375-0.016-10.735 0.025-16.093z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">TikTok<\/span><\/a><\/li>\n\n<li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-facebook has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/eticketing.myy\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Facebook<\/span><\/a><\/li>\n\n<li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-threads has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.threads.com\/@eticketing.my\/\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16.3 11.3c-.1 0-.2-.1-.2-.1-.1-2.6-1.5-4-3.9-4-1.4 0-2.6.6-3.3 1.7l1.3.9c.5-.8 1.4-1 2-1 .8 0 1.4.2 1.7.7.3.3.5.8.5 1.3-.7-.1-1.4-.2-2.2-.1-2.2.1-3.7 1.4-3.6 3.2 0 .9.5 1.7 1.3 2.2.7.4 1.5.6 2.4.6 1.2-.1 2.1-.5 2.7-1.3.5-.6.8-1.4.9-2.4.6.3 1 .8 1.2 1.3.4.9.4 2.4-.8 3.6-1.1 1.1-2.3 1.5-4.3 1.5-2.1 0-3.8-.7-4.8-2S5.7 14.3 5.7 12c0-2.3.5-4.1 1.5-5.4 1.1-1.3 2.7-2 4.8-2 2.2 0 3.8.7 4.9 2 .5.7.9 1.5 1.2 2.5l1.5-.4c-.3-1.2-.8-2.2-1.5-3.1-1.3-1.7-3.3-2.6-6-2.6-2.6 0-4.7.9-6 2.6C4.9 7.2 4.3 9.3 4.3 12s.6 4.8 1.9 6.4c1.4 1.7 3.4 2.6 6 2.6 2.3 0 4-.6 5.3-2 1.8-1.8 1.7-4 1.1-5.4-.4-.9-1.2-1.7-2.3-2.3zm-4 3.8c-1 .1-2-.4-2-1.3 0-.7.5-1.5 2.1-1.6h.5c.6 0 1.1.1 1.6.2-.2 2.3-1.3 2.7-2.2 2.7z\"\/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Threads<\/span><\/a><\/li>\n\n<li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-instagram has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.instagram.com\/eticketing.my\/\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Instagram<\/span><\/a><\/li>\n\n<li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-x has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/x.com\/eticketing_my\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">X<\/span><\/a><\/li>\n\n<li style=\"color:#ffffff;\" class=\"wp-social-link wp-social-link-youtube has-background-color wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/youtube.com\/@eticketing_my\" class=\"wp-block-social-link-anchor\"><svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">YouTube<\/span><\/a><\/li><\/ul>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8d88fe0f wp-block-columns-is-layout-flex\" style=\"padding-top:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20)\">\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-e3d1c41b wp-block-column-is-layout-flow\" style=\"flex-basis:15%\"><div class=\"is-default-size wp-block-site-logo\"><a href=\"https:\/\/eticketing.my\/ms\/\" class=\"custom-logo-link\" rel=\"home\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"90\" src=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png\" class=\"custom-logo\" alt=\"ETicketing\" srcset=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png 300w, https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01-18x5.png 18w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top center-only-web is-layout-flow wp-container-core-column-is-layout-040789e5 wp-block-column-is-layout-flow\" style=\"padding-right:0;padding-left:0;flex-basis:85%\">\n<p class=\"has-primary-color has-text-color has-link-color has-normal-font-size wp-elements-785782f9c6993f632f9505224aa9c6e0\">eTicketing.my is a leading Malaysian-owned online bus ticketing platform for seamless travel booking anytime, anywhere.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-9366075c wp-block-group-is-layout-flex\">\n<p class=\"has-primary-color has-text-color has-link-color has-tiny-font-size wp-elements-b7e7aa08580e5a4c4c77c458f6683d53\">Copyright 2026 \u00a9 Eticketing.my. All Right Reserved<\/p>\n\n\n\n<p class=\"has-primary-color has-text-color has-link-color has-tiny-font-size wp-elements-045f57d49494b4a448a89f0f0d07c559\">Dikuasai oleh <a href=\"https:\/\/eticketing.my\/ms\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>E-Transact Technology Sdn Bhd<\/strong><\/a><\/p>\n<\/div>\n<\/div>\n<\/footer>","protected":false},"excerpt":{"rendered":"<p>Don&#8217;t miss our offer Top Destination Our popular bus routes in Malaysia. Integrated Bus Terminal Integrated bus terminal online ticket. Skip the queue. No boarding pass with contactless app. Bus Operators Bus companies that works with us to deliver the best experience for you \u23af\u23af\u23af\u23af\u23af\u23af\u23af\u23af\u23af EXPLORE MORE EXCITING OFFERS<\/p>","protected":false},"author":1,"featured_media":3176,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-570","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>ETicketing - Beli Tiket Bas Online. Mudah dan Murah.<\/title>\n<meta name=\"description\" content=\"Platform tiket bas terbesar dan termurah di Malaysia tanpa caj tersembunyi. Beli tiket dengan cepat, selamat dan nikmati diskaun yang berbaloi\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/eticketing.my\/ms\/\" \/>\n<meta property=\"og:locale\" content=\"ms_MY\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Eticketing\" \/>\n<meta property=\"og:description\" content=\"Beli tiket bas termurah di Malaysia. Tanpa caj tersembunyi\" \/>\n<meta property=\"og:url\" content=\"https:\/\/eticketing.my\/ms\/\" \/>\n<meta property=\"og:site_name\" content=\"ETicketing\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/eticketing.myy\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-12T03:43:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1080\" \/>\n\t<meta property=\"og:image:height\" content=\"576\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@eticketing_my\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/eticketing.my\/\",\"url\":\"https:\/\/eticketing.my\/\",\"name\":\"ETicketing - Beli Tiket Bas Online. Mudah dan Murah.\",\"isPartOf\":{\"@id\":\"https:\/\/eticketing.my\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/eticketing.my\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/eticketing.my\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg\",\"datePublished\":\"2024-08-06T04:44:19+00:00\",\"dateModified\":\"2025-11-12T03:43:21+00:00\",\"description\":\"Platform tiket bas terbesar dan termurah di Malaysia tanpa caj tersembunyi. Beli tiket dengan cepat, selamat dan nikmati diskaun yang berbaloi\",\"breadcrumb\":{\"@id\":\"https:\/\/eticketing.my\/#breadcrumb\"},\"inLanguage\":\"ms-MY\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/eticketing.my\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ms-MY\",\"@id\":\"https:\/\/eticketing.my\/#primaryimage\",\"url\":\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg\",\"contentUrl\":\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg\",\"width\":1080,\"height\":576},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/eticketing.my\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/eticketing.my\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ETicketing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/eticketing.my\/#website\",\"url\":\"https:\/\/eticketing.my\/\",\"name\":\"ETicketing\",\"description\":\"Beli Tiket Bas Online. Mudah dan Murah.\",\"publisher\":{\"@id\":\"https:\/\/eticketing.my\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/eticketing.my\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ms-MY\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/eticketing.my\/#organization\",\"name\":\"ETicketing\",\"url\":\"https:\/\/eticketing.my\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ms-MY\",\"@id\":\"https:\/\/eticketing.my\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png\",\"contentUrl\":\"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png\",\"width\":300,\"height\":90,\"caption\":\"ETicketing\"},\"image\":{\"@id\":\"https:\/\/eticketing.my\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/eticketing.myy\",\"https:\/\/x.com\/eticketing_my\",\"https:\/\/www.tiktok.com\/@eticketing.my\",\"https:\/\/www.threads.com\/@eticketing.my\/\",\"https:\/\/www.instagram.com\/eticketing.my\/\",\"https:\/\/youtube.com\/@eticketing_my\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ETicketing - Beli Tiket Bas Online. Mudah dan Murah.","description":"Platform tiket bas terbesar dan termurah di Malaysia tanpa caj tersembunyi. Beli tiket dengan cepat, selamat dan nikmati diskaun yang berbaloi","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/eticketing.my\/ms\/","og_locale":"ms_MY","og_type":"article","og_title":"Eticketing","og_description":"Beli tiket bas termurah di Malaysia. Tanpa caj tersembunyi","og_url":"https:\/\/eticketing.my\/ms\/","og_site_name":"ETicketing","article_publisher":"https:\/\/www.facebook.com\/eticketing.myy","article_modified_time":"2025-11-12T03:43:21+00:00","og_image":[{"width":1080,"height":576,"url":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@eticketing_my","twitter_misc":{"Est. reading time":"2 minit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/eticketing.my\/","url":"https:\/\/eticketing.my\/","name":"ETicketing - Beli Tiket Bas Online. Mudah dan Murah.","isPartOf":{"@id":"https:\/\/eticketing.my\/#website"},"primaryImageOfPage":{"@id":"https:\/\/eticketing.my\/#primaryimage"},"image":{"@id":"https:\/\/eticketing.my\/#primaryimage"},"thumbnailUrl":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg","datePublished":"2024-08-06T04:44:19+00:00","dateModified":"2025-11-12T03:43:21+00:00","description":"Platform tiket bas terbesar dan termurah di Malaysia tanpa caj tersembunyi. Beli tiket dengan cepat, selamat dan nikmati diskaun yang berbaloi","breadcrumb":{"@id":"https:\/\/eticketing.my\/#breadcrumb"},"inLanguage":"ms-MY","potentialAction":[{"@type":"ReadAction","target":["https:\/\/eticketing.my\/"]}]},{"@type":"ImageObject","inLanguage":"ms-MY","@id":"https:\/\/eticketing.my\/#primaryimage","url":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg","contentUrl":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Special-Discount.jpg","width":1080,"height":576},{"@type":"BreadcrumbList","@id":"https:\/\/eticketing.my\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/eticketing.my\/"},{"@type":"ListItem","position":2,"name":"ETicketing"}]},{"@type":"WebSite","@id":"https:\/\/eticketing.my\/#website","url":"https:\/\/eticketing.my\/","name":"ETicketing","description":"Beli Tiket Bas Online. Mudah dan Murah.","publisher":{"@id":"https:\/\/eticketing.my\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/eticketing.my\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ms-MY"},{"@type":"Organization","@id":"https:\/\/eticketing.my\/#organization","name":"ETicketing","url":"https:\/\/eticketing.my\/","logo":{"@type":"ImageObject","inLanguage":"ms-MY","@id":"https:\/\/eticketing.my\/#\/schema\/logo\/image\/","url":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png","contentUrl":"https:\/\/eticketing.my\/wp-content\/uploads\/2025\/08\/Logo-Apps-Eticketing-Finalize-01-01.png","width":300,"height":90,"caption":"ETicketing"},"image":{"@id":"https:\/\/eticketing.my\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/eticketing.myy","https:\/\/x.com\/eticketing_my","https:\/\/www.tiktok.com\/@eticketing.my","https:\/\/www.threads.com\/@eticketing.my\/","https:\/\/www.instagram.com\/eticketing.my\/","https:\/\/youtube.com\/@eticketing_my"]}]}},"_links":{"self":[{"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/pages\/570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/comments?post=570"}],"version-history":[{"count":0,"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/pages\/570\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/media\/3176"}],"wp:attachment":[{"href":"https:\/\/eticketing.my\/ms\/wp-json\/wp\/v2\/media?parent=570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}