a:6:{i:0;s:11712:"				<div class="h1"><h1>Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 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 & Marvellous Krabi 09 Nights & 10 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">
						9 Nights / 10 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Singapore, Krabi</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 83499 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 & Marvellous Krabi 09 Nights & 10 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="113243"/>
						</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/185398.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/185398.jpg"  width="150" height="150"    alt="Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 Days Package" title="Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 Days Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Cost of Land Part Package: INR 83,499/- per adult on twin sharing basis (Inclusive of Visa Charges for Singapore)<br />
<br />
HOTEL DETAILS:<br />
Singapore : Park Royal on Kitchener Rd / similar in 4*<br />
Cruise : 3Nighter Cruise – Sunday Departure Window Cabin<br />
(Upgrade to Balcony Cabin with INR 10,000 pp)<br />
Krabi : Krabi Resort/ similar in 4*<br />
Return airport transfers<br />
Daily breakfast at all Hotels<br />
All Meals in Cruise<br />
3 Nights in Singapore + 3 Nighter Cruise + 3 Nights in Krabi<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 + Wings Of<br />
Time {8:40 Pm})<br />
Universal Studio<br />
Night Safari<br />
Phi Phi Island Tour<br />
Singapore Visa<br />
Return Cruise TransfersAirfare<br />
Thailand Visa on Arival<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> KRAB
								</p>
								<p class="aj">Arrive in Krabi and on arrival get transferred to your hotel in Krabi.</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> KRABI
								</p>
								<p class="aj">After breakfast, get started for Phi –Phi Island tour</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> KRABI
								</p>
								<p class="aj">Have day at leisure and enjoy famous Water activities like Speed Boat etc. in Krabi<br />
Isalnd by your own</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> KRABI-SINGAPORE
								</p>
								<p class="aj">After breakfast, check out from hotel and get transferred to Airport and board your<br />
flight for Singapore. Upon arrival in Singapore get transferred to Cruise Terminal and<br />
later in evening board the 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 5:</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 6:</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 7:</b> DISEMBARK THE CRUISE - SINGAPORE
								</p>
								<p class="aj">Disembark the Cruise and check into hotel in Singapore. Enjoy Night Safari in<br />
Evening.</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> 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 9:</b> SINGAPORE
								</p>
								<p class="aj">After Breakfast, Enjoy City tour with Flyer followed by Sentosa Island Tour</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 10:</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>Sightseeing</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare</li><li>
Thailand Visa on Arival</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 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, 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 & Marvellous Krabi 09 Nights & 10 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="113243"/>
						</form>
						</div>
						
						";i:1;s:122:"Book Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 Days Package - 9 Nights / 10 Days Tour Packages";i:2;s:187:"book astonishing singapore, funky cruise & marvellous krabi 09 nights & 10 days package - 9 nights / 10 days tour packages, beach and islands tour packages, singapore, krabi tour packages";i:3;s:263:"Oppex Travels & Tours ( a Division of Oppex Freight Systems offers Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 Days Package - 9 Nights / 10 Days tour package, budget Beach and Islands tour packages for Singapore, Krabi at exciting price.";i:4;s:1374:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Singapore, Krabi"        
		                 },
		      "description": "Cost of Land Part Package: INR 83,499/- per adult on twin sharing basis (Inclusive of Visa Charges for Singapore)

HOTEL DETAILS:
Singapore : Park Royal on Kitchener Rd / similar in 4*
Cruise : 3Nighter Cruise – Sunday Departure Window Cabin
(Upgrade to Balcony Cabin with INR 10,000 pp)
Krabi : Krabi Resort/ similar in 4*
Return airport transfers
Daily breakfast at all Hotels
All Meals in Cruise
3 Nights in Singapore + 3 Nighter Cruise + 3 Nights in Krabi
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 + Wings Of
Time {8:40 Pm})
Universal Studio
Night Safari
Phi Phi Island Tour
Singapore Visa
Return Cruise TransfersAirfare
Thailand Visa on Arival
GST As per applicable
Hotels not booked yet.
Rates Subject to change without prior notice.",
		      "name": "Astonishing Singapore, Funky Cruise & Marvellous Krabi 09 Nights & 10 Days Package",
		      "telephone": "+91-9821321975"
		    }
		    </script>
			";i:5;N;}