a:6:{i:0;s:11460:"				<div class="h1"><h1>Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.oppexholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.oppexholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						8 Nights / 9 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Kuala Lumpur, Singapore</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 79299 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="113238"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_2/37817/185388.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/185388.jpg"  width="150" height="150"    alt="Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package" title="Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Cost of Land Part Package: INR 79,299/- per adult on twin sharing basis (Inclusive of Visa Charges for Singapore & Malaysia)<br />
<br />
HOTEL DETAILS:<br />
Singapore : Park Royal on Kitchener Rd / similar in 4*<br />
Cruise : Ocean View Window Cabin<br />
(upgrade to balcony Cabin with INR 7000 pp)<br />
Kuala Lumpur : Furama Bintang/ similar in 4*<br />
Return airport transfers<br />
Daily breakfast at all Hotels<br />
All Meals in Cruise<br />
3 Nights in Singapore + 2 Nights Cruise + 1 Night in Genting + 2 Nights in Kuala<br />
Lumpur<br />
Singapore City tour with Singapore Flyer<br />
Sentosa Extreme (Butterfly Park And Insect Kingdom + Cable Car (one Way) +<br />
Luge And Sky Ride + Sky Tower + Underwater World + Dolphin Lagoon )<br />
Universal Studio<br />
Night Safari<br />
Snow Park + Indoor theme Park ticket in Genting<br />
Enroute through Batu Caves<br />
KL City Tour<br />
Singapore Visa<br />
Malaysia Visa<br />
Return Cruise TransfersAirfare<br />
GST As per applicable<br />
Hotels not booked yet.<br />
Rates Subject to change without prior notice.<br />						<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> SINGAPORE
								</p>
								<p class="aj">Board your flight from Del to Singapore. On arrival in Singapore, you will be transferred to your hotel. Can have leisure time and later on enjoy Night Safari.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> SINGAPORE - CRUISE
								</p>
								<p class="aj">After enjoying a scrumptious breakfast at the hotel, later on head for Sentosa Island Tour and evening board the Star Gemini Cruise</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> CRUISE
								</p>
								<p class="aj">Enjoyment Continues at Cruise</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> SINGAPORE
								</p>
								<p class="aj">Disembark the Cruise and check into hotel in Singapore. Evening at Leisure</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> SINGAPORE
								</p>
								<p class="aj">Enjoy Universal Studio Tour (Can opt for Express Ticket of Universal Studio</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> KUALA LUMPUR- GENTING
								</p>
								<p class="aj">After Breakfast, check out from Hotel and board your flight or transfer by Rd to KUl.<br />
From there get transferred to Genting and check-in hotel in Genting. Enjoy Snow World/Indoor theme park in Genting.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> KUL
								</p>
								<p class="aj">Enjoy in Genting and later on get transferred to KUL and check-in the hotel</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> KUL
								</p>
								<p class="aj">Enjoy City Tour of KUL and evening on leisure.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 9:</b> DEPART FOR INDIA
								</p>
								<p class="aj">Check out of the hotel as you will be transferred to the Airport</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Meals</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare</li><li>
GST As per applicable</li><li>
Hotels not booked yet.</li><li>
Rates Subject to change without prior notice.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<ul>
	<li>The above is only an offer. In the event of Non availability of the specified hotel, alternate or similar hotels would be offered.</li>
	<li>Rates valid strictly for the requested period.</li>
	<li>RATES FOR PRIVATE SERVICES ARE BASED ON MINIMUM PAX TRAVELING. ANY</li>
	<li>CHANGE IN THRE NUMBER OF PAX WOULD LEAD TO CHANGE IN COST</li>
	<li>Any increase in the Airlines taxes /Hotel Surcharges from the time of Booking till the Departure date must be borne by pax.</li>
	<li>No refund for unutilized service</li>
	<li>All Hotels, Itinerary, restaurants subject to change without notice.</li>
	<li>Rates valid only for the dates and period requested. Change in date would lead to change of Cost</li>
	<li>Rates are based on as on date&rsquo;s exchange rate. Should there be any major fluctuation OPPEX TRAVELS AND TOURS reserve the right to furnish a fresh quote.</li>
	<li>Rates do not include Event/ Peak Season surcharges. Would be advised at the time of booking.</li>
	<li>Any damage caused to hotel rooms/ Coach during your stay, shall be payable by the which may occur in carrying out the tour arrangement, weather conditions, strikes, Passengers.</li>
	<li>OPPEX TRAVELS AND TOURS will not be liable for the same.</li>
	<li>The Company shall not accept any liability or responsibility for any damages, loss,</li>
	<li>injury, accident, death, Flight Cancelation by Airline, breakdown, or irregularity, wars, quarantine or any other cause whatsoever and all such loss or expense must be borne by pax.</li>
	<li>All Tours subject to OPPEX TRAVELS AND TOURS Tour conditions</li>
	<li>For payments made in INR, the conversion would be based on the ROE as on the date of payments</li>
</ul>												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="113238"/>
						</form>
						</div>
						
						";i:1;s:121:"Book Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package - 8 Nights / 9 Days Tour Packages";i:2;s:193:"book astonishing singapore, funky cruise & lovable malaysia 08 nights & 09 days package - 8 nights / 9 days tour packages, beach and islands tour packages, kuala lumpur, singapore tour packages";i:3;s:284:"Book Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package - 8 Nights / 9 Days tour packages from Oppex Travels & Tours ( a Division of Oppex Freight Systems - Get attractive 8 Nights / 9 Days Beach and Islands  tour packages for  Kuala Lumpur, Singapore.";i:4;s:1435:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kuala Lumpur, Singapore"        
		                 },
		      "description": "Cost of Land Part Package: INR 79,299/- per adult on twin sharing basis (Inclusive of Visa Charges for Singapore & Malaysia)

HOTEL DETAILS:
Singapore : Park Royal on Kitchener Rd / similar in 4*
Cruise : Ocean View Window Cabin
(upgrade to balcony Cabin with INR 7000 pp)
Kuala Lumpur : Furama Bintang/ similar in 4*
Return airport transfers
Daily breakfast at all Hotels
All Meals in Cruise
3 Nights in Singapore + 2 Nights Cruise + 1 Night in Genting + 2 Nights in Kuala
Lumpur
Singapore City tour with Singapore Flyer
Sentosa Extreme (Butterfly Park And Insect Kingdom + Cable Car (one Way) +
Luge And Sky Ride + Sky Tower + Underwater World + Dolphin Lagoon )
Universal Studio
Night Safari
Snow Park + Indoor theme Park ticket in Genting
Enroute through Batu Caves
KL City Tour
Singapore Visa
Malaysia Visa
Return Cruise TransfersAirfare
GST As per applicable
Hotels not booked yet.
Rates Subject to change without prior notice.",
		      "name": "Astonishing Singapore, Funky Cruise & Lovable Malaysia 08 Nights & 09 Days Package",
		      "telephone": "+91-9821321975"
		    }
		    </script>
			";i:5;N;}