a:6:{i:0;s:11076:"				<div class="h1"><h1>Summer Asian Getaway Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.holidaymasti.co.in/" title="Home">Home</a> 
				
								
				<b class="ffv p2px">&rsaquo;</b>Summer Asian Getaway Tour</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">Tour Code </td>
						<td class="p5px pl0px vat">2015</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Kuala Lumpur, Singapore, Johor Bahru</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.holidaymasti.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Summer Asian Getaway Tour - 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="46795"/>
						</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/30465/91924.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/30465/91924.jpg"  width="150" height="150"    alt="Summer Asian Getaway Tour" title="Summer Asian Getaway Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<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> Arrival
								</p>
								<p class="aj">S.E.A. AquariumTM at Resort World Sentosa<br />
‘Wings of Time’ show at Sentosa Island<br />
Welcome to Singapore - the Lion city. On arrival, your local representative will be waiting outside the customs area to meet you and take you to your hotel (Check-in time is after 3.00 pm). This evening, we visit S.E.A. AquariumTM at Resort World Sentosa, where you will discover the Awe-inspiring world of life in the ocean at the world’s largest aquarium. Immerse yourself in a magical marine world. Discover the endless wonders of the blue planet at S.E.A. AquariumTM which will take you and your family on an unforgettable journey.<br />
Later, we visit Sentosa Island for the fabulous light and sound ‘Wings of Time’ show.<br />
Overnight at the hotel in Singapore.</p>					
									<p><b>Meals : </b> Dinner</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 City tour
								</p>
								<p class="aj">Today, the day is free for you. You can shop from the famous malls in the city OR you can OPT for the suggested excursion to the Universal Studios Singapore. This Theme Park will offer you excitement, thrill and a great fun time with their featured brand new rides and unlimited entertainment. Witness the world’s first Far Far Away Castle in ‘the Shrek 4-D adventure’. Meet the terrifying T Rex in ‘The Lost World’, ride the world’s tallest dueling roller coasters at Sci-Fi City and witness ancient Egypt on the psychological thrill ride - ‘Revenge of The Mummy’.<br />
The evening is free for you to enjoy the nightlife of this vibrant city, OR you can opt for the suggested excursion to Night Safari with River Safari. Set in a jungle adjoining the Singapore Zoo, the Night Safari offers the unique chance to witness over 1000 animals in their recreated natural environment in the dark.<br />
On the River Cruise, expect plenty of picture - perfect scenic photo opportunities and if you are lucky, you may even catch glimpses of wild storks, herons or other wildlife along the way.<br />
It’s something the whole family can enjoy. A welcome, relaxing respite from a day of fun and exploration. So step on board and lose yourself in nature at its most charming and picturesque.<br />
Overnight at the hotel in Singapore.</p>					
									<p><b>Meals : </b> Breakfast & Dinner</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> Singapore City tour
								</p>
								<p class="aj">Today, the morning is free for you. In the afternoon, we proceed for a guided city tour of Singapore. See the ‘Swissotel - The Stamford’ one of the tallest hotels in the world, Parliament House and City Hall. Take a photo stop at the Merlion - Singapore’s famous symbol and The Esplanade, Singapore’s pride and joy. Visit Singapore Gems factory.<br />
Next, we proceed to Johor Bahru, which is the second-largest city in Malaysia.<br />
Overnight at the hotel in Johor Bahru.</p>					
									<p><b>Meals : </b> Breakfast & Dinner</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> Drive to Kuala Lumpur
								</p>
								<p class="aj">Today, we check-out of the hotel and drive to Kuala Lumpur. Kuala Lumpur, affectionately known as KL, is an amazing cultural melting pot. This city has a lively nightlife scene and a fascinating art and performance culture, which blends contemporary and traditional styles from many backgrounds.<br />
En route, we take you for Putrajaya Tour. View the imposing landmarks such as the Putra Mosque and Putrajaya Lake, and see Perdana Putra - the Prime Minister’s office. Later, we proceed to our hotel and check-in.<br />
Overnight at the hotel in Kuala Lumpur.</p>					
									<p><b>Meals : </b> Breakfast, Dinner</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> Panoramic City Tour
								</p>
								<p class="aj">Today, we take you on a guided panoramic city tour of the sprawling capital city of Kuala Lumpur. See the 88 storey Petronas Twin Towers, Lake Gardens with National Monument, National Mosque and Merdeka Square. Later, we proceed to the world famous resort in the cloud ‘Genting Highlands’. On arrival at Genting Highlands, enter a world of enchanted attraction at the Snow World. The Snow World houses fantasies and wonders on a fairyland high at the peak. Experience the new attractions as you walk into the new Snow World in First World Plaza. In the evening, we proceed back to Kuala Lumpur. En route we take you for a short visit to Batu Caves, a Hindu Shrine.<br />
Overnight at the hotel in Kuala Lumpur.</p>					
									<p><b>Meals : </b> Breakfast, Dinner</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> Departure
								</p>
								<p class="aj">Today, we drive you to the airport for your flight back home. It’s time to say goodbye to all the new friends you have made. We hope you take back many happy memories of your holiday. We would like you to spare a few minutes of your time to write and tell us how you enjoyed your holiday and any suggestions you may have for the future.</p>					
									<p><b>Meals : </b> Breakfast</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>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. * Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.holidaymasti.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Summer Asian Getaway Tour - 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="46795"/>
						</form>
						</div>
						
						";i:1;s:64:"Book Summer Asian Getaway Tour - 5 Nights / 6 Days Tour Packages";i:2;s:149:"book summer asian getaway tour - 5 nights / 6 days tour packages, forts and palaces tour packages, kuala lumpur, singapore, johor bahru tour packages";i:3;s:179:"Holiday Masti offers Summer Asian Getaway Tour - 5 Nights / 6 Days tour package, budget Forts and Palaces tour packages for Kuala Lumpur, Singapore, Johor Bahru at exciting price.";i:4;s:433:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kuala Lumpur, Singapore, Johor Bahru"        
		                 },
		      "description": "",
		      "name": "Summer Asian Getaway Tour",
		      "telephone": "+91-8090952150"
		    }
		    </script>
			";i:5;N;}